Install (JavaScript)
For any site where you can paste HTML/JS in the footer — custom sites, Webflow, etc.
Why this works
Your Signals Hub lives under your domain so search engines and AI systems attribute everything to you.
- Content is published under your domain (signals.yourdomain.com), so authority stays with your brand.
- Your robots.txt and sitemap ensure crawlers and AI discovery engines can find and index your signals.
- A footer link creates an always-fresh entry point from your main site to your latest signal.
Infrastructure Setup (Required)
This step must be completed by your IT or DevOps team. DNS changes cannot be automated.
DNS Setup (CNAME)
Create a CNAME record:
signals.your-domain.com → CNAME → ingest.freshnews.aiDNS propagation may take a few minutes to several hours.
⚠️ This step must be completed before continuing.
Application Setup (Can Be Automated)
After DNS is configured, you can automatically complete the remaining setup using Cursor, Copilot, or your AI development assistant.
🔧 Developer Shortcut — Complete Integration Automatically
Use this prompt in Cursor or Copilot to:
- Update robots.txt
- Add llms.txt
- Insert Latest Signal footer
- Verify sitemap inclusion
⚠️ DNS (CNAME) must already be configured before running this prompt.
Manual Alternative
If you prefer to set up manually, follow these steps:
robots.txt (Sitemap Discovery)
On your main domain robots.txt, add the line below.
Main domain robots.txt:
Sitemap: https://signals.your-domain.com/sitemap.xmlFooter: Hidden Latest Signal (for crawlers)
Add this near the bottom of <body> (or in your global footer). It will inject a link to the latest signal, but keep it hidden from users. Full SEO/crawler value with no footer clutter.
Recommended: Hidden Latest Signal (for crawlers)
<!-- FreshNews.ai: Hidden Latest Signal (SEO/Crawlers) -->
<div id="freshnews-latest" class="freshnews-footer-pulse" aria-hidden="true">
<noscript>
<a href="https://signals.your-domain.com/en/latest" target="_blank" rel="noopener noreferrer">
Latest Signal ↗
</a>
</noscript>
</div>
<style>
/* Keep it crawlable but not visible */
.freshnews-footer-pulse{
position:absolute !important;
left:-9999px !important;
width:1px !important;
height:1px !important;
overflow:hidden !important;
}
</style>
<script
src="https://signals.your-domain.com/embed/footer-pulse.min.js"
data-hub="https://signals.your-domain.com"
data-container="#freshnews-latest"
data-lang="en"
data-label="Latest Signal: "
data-target="_blank"
></script>The snippet is visually hidden (crawlable but not visible). Optionally, you can add a simple visible link to /latest elsewhere if you want.
Multi-language: For bilingual sites, add the snippet in both footers. For Hebrew use /he/latest in the link and data-label="אות אחרון: ".
llms.txt
The llms.txt standard helps AI systems discover your content. Place it at the root of your signals subdomain: https://signals.your-domain.com/llms.txt.
# FreshNews.ai Signals Hub
> Content published under your domain for SEO, AEO, and GEO.
## Sitemap
https://signals.your-domain.com/sitemap.xml
## Latest
https://signals.your-domain.com/en/latestSubmit your Signals Hub to Google & Bing
Once your hub is live, add it as a property in search consoles so Google and Bing can discover and index your signals.
- Google Search Console: Add your hub as a property (domain or URL prefix). Use DNS verification for domain-level. Submit the sitemap:
https://signals.your-domain.com/sitemap.xml - Bing Webmaster Tools: Add your hub and submit the same sitemap. Bing powers Microsoft Copilot and has a broad indexing footprint — verification helps your content appear in AI-generated answers.
Note: You do not need to submit individual pages (Signals / FAQ / articles) manually — they are included in the sitemap.
Multi-Language Setup
If your site is available in multiple languages, use the snippet for each language. Select a tab to see the code for that locale.
<!-- FreshNews.ai: Hidden Latest Signal (SEO/Crawlers) -->
<div id="freshnews-latest" class="freshnews-footer-pulse" aria-hidden="true">
<noscript>
<a href="https://signals.your-domain.com/en/latest" target="_blank" rel="noopener noreferrer">
Latest Signal ↗
</a>
</noscript>
</div>
<style>
/* Keep it crawlable but not visible */
.freshnews-footer-pulse{
position:absolute !important;
left:-9999px !important;
width:1px !important;
height:1px !important;
overflow:hidden !important;
}
</style>
<script
src="https://signals.your-domain.com/embed/footer-pulse.min.js"
data-hub="https://signals.your-domain.com"
data-container="#freshnews-latest"
data-lang="en"
data-label="Latest Signal: "
data-target="_blank"
></script>Search & AI Discovery Setup (Recommended)
Improve discoverability in Google, Bing, and AI systems. These steps are optional but recommended for enterprise deployments.
1. Google Search Console
Add signals.your-domain.com as a domain property in Google Search Console. This lets Google discover and index your signals for search and AI Overviews.
- DNS verification: Use the TXT record method for domain-level verification — it validates ownership of the subdomain.
- Sitemap submission: After verification, add
https://signals.your-domain.com/sitemap.xmlunder Sitemaps.
2. Bing Webmaster Tools
Add your signals subdomain in Bing Webmaster Tools. Bing powers Microsoft Copilot and several AI search engines, so verification helps your content appear in AI-generated answers.
- Import from Search Console (if already verified) or add the site manually.
- Submit
https://signals.your-domain.com/sitemap.xmlunder Sitemaps.
3. robots.txt for JS integration
Place this file at signals.your-domain.com/robots.txt. It allows AI crawlers (OpenAI, etc.) and references your sitemap.
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Allow: /
User-agent: *
Allow: /
Sitemap: https://signals.your-domain.com/sitemap.xml4. llms.txt (optional)
The llms.txt standard helps AI systems discover and understand your content. Place it at the root of your signals subdomain: https://signals.your-domain.com/llms.txt.
# FreshNews.ai Signals Hub
> Content published under your domain for SEO, AEO, and GEO.
## Sitemap
https://signals.your-domain.com/sitemap.xml
## Latest
https://signals.your-domain.com/en/latestVerification
Verifies CNAME (signals subdomain → ingest.freshnews.ai) and footer integration on your website. Enter both URLs and click to run checks. All checks run on our server.
- CNAMENot checked
- Footer (Latest Signal)Not checked
Optional: Embed content on your website
Not required for activation. Use this if you want to display Signals / Insights / FAQ directly on your main site.
Embed Signals Page
Display your signals list on any page.
Embed Insights Page
Display your insights list on any page.
Embed FAQ (New)
Display your product FAQ on your site.
Hochleistungsfunktionen
Stale-While-Revalidate
Sofortige Ladezeiten mit Frische. Das Widget zeigt gecachte Inhalte sofort an (0ms Verzögerung) und ruft dann frische Daten im Hintergrund für sanfte Updates ab.
Skeleton-Screens
Kein Layout-Shift. Das Widget zeigt animierte Skeleton-Screens während des Ladens anstelle von 'Lädt...'-Text für eine bessere wahrgenommene Leistung.
Paralleles Abrufen
Branding und Artikel werden parallel (nicht blockierend) abgerufen, sodass Artikel sofort gerendert werden, auch wenn die Branding-API langsam ist.
Wie Neue Artikel Erscheinen
Sofortiges Rendering (0ms Verzögerung)
Das Widget verwendet LocalStorage-Caching, um Inhalte sofort anzuzeigen. Beim ersten Besuch laden Artikel sofort aus dem Cache (0ms wahrgenommene Verzögerung), dann werden frische Daten im Hintergrund abgerufen.
Sanfte Aktualisierung
Die Hintergrundabfrage sorgt für Frische, ohne die Benutzererfahrung zu stören. Neue Artikel erscheinen nahtlos, wenn sie veröffentlicht werden, ohne Layout-Verschiebungen oder Ladeanzeigen.
Entdeckungsvorteil
💡 Warum dies für KI wichtig ist: Generative Maschinen (GEO) und Antwortmaschinen (AEO) suchen nach schnellen, autoritativen HTML-Strukturen. Der "Stale-While-Revalidate"-Ansatz unseres Widgets stellt sicher, dass KI-Crawler Ihren Inhalt sofort finden, während Ihre Benutzer eine sofortige Ladeerfahrung erhalten.
Zusätzliche Ressourcen
Für detaillierte API-Dokumentation siehe EMBED-API.md-Dokumentation. Für Fehlerbehebung kontaktieren Sie uns unter contact@freshnews.ai.