diff --git a/website/astro.config.mjs b/website/astro.config.mjs index 106618b..60217f3 100644 --- a/website/astro.config.mjs +++ b/website/astro.config.mjs @@ -71,7 +71,8 @@ export default defineConfig({ !page.includes("/tags/") && !page.includes("/account/") && !page.includes("/oauth/") && - !page.includes("/invite/") + !page.includes("/invite/") && + !page.includes("/en-US") ); }, serialize: (item) => { @@ -86,6 +87,27 @@ export default defineConfig({ item.url = item.url.replace(/^https?:\/\/[^/]+/, baseUrl); } + if (item.links?.length) { + item.links = item.links.map((link) => ({ + ...link, + url: link.url.replace(/^https?:\/\/[^/]+/, baseUrl), + })); + + // Point x-default at the English (root) alternate + const defaultLink = item.links.find( + (link) => link.lang === LOCALES_MAP[DEFAULT_LOCALE], + ); + if ( + defaultLink && + !item.links.some((link) => link.lang === "x-default") + ) { + item.links.push({ + url: defaultLink.url, + lang: "x-default", + }); + } + } + // Check if this is a homepage link using the current base URL const homepageLinks = SUPPORTED_LOCALES.map((locale) => { if (locale === DEFAULT_LOCALE) return `${baseUrl}/`; diff --git a/website/public/_redirects b/website/public/_redirects index 1a83d31..b4c530b 100644 --- a/website/public/_redirects +++ b/website/public/_redirects @@ -1,4 +1,7 @@ /quantum-security-checker /quantum-risk-checker 301 /quantum-security-checker/ /quantum-risk-checker 301 /quests /quests/shill 301 -/quests/ /quests/shill 301 \ No newline at end of file +/quests/ /quests/shill 301 +/en-US / 301 +/en-US/ / 301 +/en-US/* /:splat 301 diff --git a/website/public/robots.txt b/website/public/robots.txt index cd352e8..5559fcc 100644 --- a/website/public/robots.txt +++ b/website/public/robots.txt @@ -1,4 +1,6 @@ User-agent: * +Content-Signal: search=yes, ai-input=yes, ai-train=yes + Allow: / Sitemap: https://www.quantus.com/sitemap-index.xml \ No newline at end of file diff --git a/website/src/components/features/about/ContactSection.astro b/website/src/components/features/about/ContactSection.astro index 2aa770e..bd8681b 100644 --- a/website/src/components/features/about/ContactSection.astro +++ b/website/src/components/features/about/ContactSection.astro @@ -21,6 +21,8 @@ const t = await createTranslator(locale); href="mailto:hello@quantus.com" class="contact-email about-animate" data-delay="0.45" + data-track="contact_email_click" + data-track-cta-location="about_contact" > {t("about.contact.email")} @@ -28,6 +30,8 @@ const t = await createTranslator(locale); href="mailto:hello@quantus.com?subject=Enquiry%20from%20Quantus%20Website" class="contact-cta about-animate" data-delay="0.6" + data-track="contact_email_click" + data-track-cta-location="about_contact" > {t("about.contact.cta")} diff --git a/website/src/components/features/community/EventSection.astro b/website/src/components/features/community/EventSection.astro index 0a10373..2838c86 100644 --- a/website/src/components/features/community/EventSection.astro +++ b/website/src/components/features/community/EventSection.astro @@ -26,7 +26,10 @@ const t = await createTranslator(locale); href="https://tally.so/r/D4502E" target="_blank" rel="noopener" - class="event-cta">{t("community.events.card.cta")}{t("community.events.card.cta")}
diff --git a/website/src/components/features/community/SocialsSection.astro b/website/src/components/features/community/SocialsSection.astro index 9f15f29..044a9c9 100644 --- a/website/src/components/features/community/SocialsSection.astro +++ b/website/src/components/features/community/SocialsSection.astro @@ -20,6 +20,9 @@ const t = await createTranslator(locale); rel="noopener" class="social-box comm-animate" data-delay="0" + data-track="community_click" + data-track-channel="x" + data-track-cta-location="community_socials" > {t("community.socials.platforms.x")} @@ -32,6 +35,9 @@ const t = await createTranslator(locale); rel="noopener" class="social-box comm-animate" data-delay="0.08" + data-track="community_click" + data-track-channel="instagram" + data-track-cta-location="community_socials" >
diff --git a/website/src/components/features/home/CommunitySection.astro b/website/src/components/features/home/CommunitySection.astro index e7ca9f6..7f2a377 100644 --- a/website/src/components/features/home/CommunitySection.astro +++ b/website/src/components/features/home/CommunitySection.astro @@ -43,6 +43,9 @@ const t = await createTranslator(locale); href="https://t.me/quantusnetwork" target="_blank" class="community-panel-cta" + data-track="community_click" + data-track-channel="telegram" + data-track-cta-location="home_community" > {t("home.community.cards.telegram.cta")} @@ -73,6 +76,9 @@ const t = await createTranslator(locale); href="https://x.com/QuantusNetwork" target="_blank" class="community-panel-cta" + data-track="community_click" + data-track-channel="x" + data-track-cta-location="home_community" > {t("home.community.cards.x.cta")} @@ -118,6 +124,9 @@ const t = await createTranslator(locale); href="https://www.instagram.com/quantusnetwork/" target="_blank" class="community-panel-cta" + data-track="community_click" + data-track-channel="instagram" + data-track-cta-location="home_community" > {t("home.community.cards.instagram.cta")} @@ -148,6 +157,9 @@ const t = await createTranslator(locale); href="https://www.youtube.com/@QuantusNetwork" target="_blank" class="community-panel-cta" + data-track="community_click" + data-track-channel="youtube" + data-track-cta-location="home_community" > {t("home.community.cards.youtube.cta")} diff --git a/website/src/components/features/home/EcosystemSection.astro b/website/src/components/features/home/EcosystemSection.astro index 6b20774..cef6c87 100644 --- a/website/src/components/features/home/EcosystemSection.astro +++ b/website/src/components/features/home/EcosystemSection.astro @@ -128,6 +128,9 @@ const t = await createTranslator(locale); target="_blank" rel="noopener" class="eco-dl-tag" + data-track="wallet_store_click" + data-track-store="ios" + data-track-cta-location="home_ecosystem" > {t("home.ecosystem.cards.wallet.app_store")} @@ -136,6 +139,9 @@ const t = await createTranslator(locale); target="_blank" rel="noopener" class="eco-dl-tag" + data-track="wallet_store_click" + data-track-store="android" + data-track-cta-location="home_ecosystem" > {t("home.ecosystem.cards.wallet.google_play")} @@ -340,7 +346,14 @@ const t = await createTranslator(locale); {t("home.ecosystem.cards.network.validators")}
- + {t("home.ecosystem.cards.network.explorer_cta")}
diff --git a/website/src/components/features/home/HeroBanner.astro b/website/src/components/features/home/HeroBanner.astro index ced483d..e5f68d3 100644 --- a/website/src/components/features/home/HeroBanner.astro +++ b/website/src/components/features/home/HeroBanner.astro @@ -25,6 +25,8 @@ const t = await createTranslator(locale); class="wallet-cta-link" target="_blank" rel="noopener" + data-track="wallet_store_click" + data-track-cta-location="home_hero" > {t("home.hero_banner.cta_download_wallet")} diff --git a/website/src/components/features/home/NewsletterSection.astro b/website/src/components/features/home/NewsletterSection.astro index dc88a06..c04014f 100644 --- a/website/src/components/features/home/NewsletterSection.astro +++ b/website/src/components/features/home/NewsletterSection.astro @@ -310,6 +310,7 @@ const t = await createTranslator(locale); diff --git a/website/src/components/ui/AppInformation.astro b/website/src/components/ui/AppInformation.astro index f277f36..6987984 100644 --- a/website/src/components/ui/AppInformation.astro +++ b/website/src/components/ui/AppInformation.astro @@ -45,6 +45,9 @@ const t = await createTranslator(locale); href={APP_LINKS.ios} target="_blank" rel="noopener noreferrer" + data-track="wallet_store_click" + data-track-store="ios" + data-track-cta-location="account" > {t("app.download.ios")} @@ -54,6 +57,9 @@ const t = await createTranslator(locale); href={APP_LINKS.android} target="_blank" rel="noopener noreferrer" + data-track="wallet_store_click" + data-track-store="android" + data-track-cta-location="account" > {t("app.download.android")} diff --git a/website/src/components/ui/Button.astro b/website/src/components/ui/Button.astro index 6d32795..72431d2 100644 --- a/website/src/components/ui/Button.astro +++ b/website/src/components/ui/Button.astro @@ -14,6 +14,8 @@ export interface Props { href?: string; target?: string; rel?: string; + /** Allow data-track* and other passthrough HTML attributes */ + [key: `data-${string}`]: string | undefined; } const { diff --git a/website/src/components/ui/CookieConsent.astro b/website/src/components/ui/CookieConsent.astro index 2419db5..a2557ef 100644 --- a/website/src/components/ui/CookieConsent.astro +++ b/website/src/components/ui/CookieConsent.astro @@ -41,6 +41,9 @@ const t = await createTranslator(locale);