Repository navigation
Website: programmatic SEO and GEO - #107
Merged
Merged
Conversation
- taxonomy.ts: category and interaction slugs, titles, hand-written intros and use cases, indexable flags and lookups - seo.ts: meaningful keywords, synonyms, variant families, related icons, per-icon titles, descriptions, intros, FAQs, variant notes, seoLint and shared Organization/WebSite/FAQ JSON-LD nodes - git.ts: last-modified dates from Git history (empty on shallow clones) - documentation and icons.json date from Git instead of the build time - sitemap.xml logs seoLint findings once per build
…adcn All-icons index at /icons, category and interaction hubs with full icon grids, FAQ and CollectionPage/ItemList/BreadcrumbList JSON-LD, Markdown versions of category pages, /lottie-icons and /shadcn-animated-icons landing pages, a Use without React docs section, and nav/footer links.
- Icon pages use the generated titles, descriptions, intros and FAQs from lib/seo.ts, with synonyms, linked interaction and category facts, a real breadcrumb, other versions and related icons - Usage tabs: React, shadcn/ui, HTML + lottie-web (full build for icons with expressions), native mobile players and static SVG - Static SVG previews as <img>, inverted in dark mode - JSON-LD graph: ItemPage, ImageObject, MediaObject, SoftwareSourceCode, BreadcrumbList, FAQPage - /og/icons/<id>.png social cards drawn with resvg and Geist at build time - /icons/<id>.md Markdown version of each icon page - Layout: image, image alt, og:type and Markdown alternate props
…otiation - Home: keyword H1 under the slogan, micro animation copy, FAQ with FAQPage JSON-LD, category and interaction link blocks, WebSite/Organization/SoftwareApplication/Dataset schema - Lighter home page: compact prerendered SVG frames, icon card styles in CSS, demos load their Lottie JSON when visible, content-visibility on icon sections - Sitemap index with page, hub and icon sitemaps (Git lastmod, image entries) - Edge functions: one 301 to canonical URLs (trailing slash, .html, aliases); Markdown negotiation for icon, category and licence pages - HSTS everywhere, noindex for /og and Markdown copies, robots.txt without the unknown directive - llms.txt hubs, new llms-full.txt and licencing-and-terms.md, expanded /zh - Contrast: darker subtle grey, high-contrast light code theme; install button name matches its text
…less templated icon pages - Build a still per icon: the first frame, or the fullest of eight later frames when the first draws nothing (checkmark, loading, loading-v2, loading-v4, arrow-up, arrow-down). Static grids, related and version lists, the home cards and OG cards use it; reduced-motion home cards keep it. - Interaction pages passed the Lottie JSON instead of the icon id to InteractionDemo, which then fetched /icons/undefined.json. - Icon FAQ: two or three questions on interaction edge cases, accessibility and colors or an alternative interaction, instead of four templated answers repeating facts and code. - Related icons count synonyms and fall back to same-category icons with the same interaction in a per-icon order; the intro leaves out the other names shown as chips. - Keep the OG self-closing SVG fix, the docs FAQ answer and the /icons rewrite.
🔎 Website previewhttps://pr-107--affectionate-goldberg-13a61e.netlify.app Updated for commit 0d6d423. |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Programmatic SEO + GEO overhaul of useanimations.com, based on a live-site audit and Search Console data (no
/icons/*page had a single impression; no sitemap was ever submitted).Icon pages (
/icons/<id>, 300)FAQPage), related icons by keyword overlap, "Other versions" for variant families@resvg/resvg-js),/icons/<id>.mdMarkdown versionsImageObjectnow points to the SVG (was the Lottie JSON); addedItemPage,MediaObject,SoftwareSourceCode, realBreadcrumbListNew hub pages
/icons(real index; it served the Home icon page before),/categories+ 20 category pages (+.md; "Other" is noindex),/interactions+ 6 interaction pages,/lottie-icons,/shadcn-animated-iconsTechnical
WebSite/Organization/SoftwareSourceCodeschema; HTML 1.01 MB → 570 KB, DOM 7,135 → 4,113canonical-urledge function: single 301 for trailing slashes,.html,/docs,/license*; Markdown negotiation extended to icon/category/licence pageslastmodfrom git (omitted when unknown)Content-Signalmoved to a comment;llms.txtextended, newllms-full.txt/zhexpanded to a full translation; consistent HSTS; contrast fixes;.mdfilesnoindexdocumentation,icons.json);seoLintlogs duplicate/over-long titles at buildNotes
dist75 MBlastmodis omitted (considergit fetch --unshallowin the build command)includeSubDomains; preloadapplies to all subdomainshttps://useanimations.com/sitemap.xmlin Search ConsoleVerified with
npm run check, a full build, curl smoke tests and headless Chromium screenshots (no console errors on hub/icon pages).