Skip to content

feat(landing): add connector SEO pages VLN-725#267

Merged
lentil32 merged 6 commits into
mainfrom
docs-connector
Jun 1, 2026
Merged

feat(landing): add connector SEO pages VLN-725#267
lentil32 merged 6 commits into
mainfrom
docs-connector

Conversation

@lentil32
Copy link
Copy Markdown
Contributor

@lentil32 lentil32 commented Jun 1, 2026

One-Line Summary

Adds dedicated connector SEO pages and simplifies the landing app structure so connector, blog, home, and SEO code have clear ownership.

User-Facing Changes

  • Adds static /connectors/<connector>/ pages for supported data sources, including connector-specific metadata and structured data.
  • Keeps /connectors/ as the connector browser entry point while each connector can now rank for its own search intent.
  • Keeps /.well-known/api-catalog/ discovery available with the same JSON linkset and link headers.
  • Preserves the existing blog, home, install script, contact, and product updates routes after the structure rewrite.

Why This Changed

The landing app had feature code spread across generic components, data, and landing folders, which made ownership hard to see and encouraged duplicated wrappers around SEO metadata, blog images, actions, and server helpers. Connector SEO also needed first-class route generation instead of only an index page, so the app structure was rewritten around actual feature boundaries before adding the connector pages.

How It Changed

  • Moves landing code into src/features/{blog,connectors,home}, shared primitives into src/shared, server handlers into src/server, and tooling helpers into src/tooling.
  • Configures @/* to resolve from the landing src root in Astro, Vitest, and TypeScript.
  • Adds connector data, tests, a connector browser component, and static connector detail routes.
  • Consolidates SEO/GEO constants and JSON-LD helpers around ONEQUERY, SEO_PATHS, and SCHEMA_FRAGMENTS.
  • Replaces the Worker binding reader with Astro's astro:env/server import for the Slack webhook.
  • Removes single-use wrappers, duplicate metadata helpers, and unnecessary re-export surfaces.

Bug Fixes

  • Fixes the pre-push type-aware lint failure for the hidden /.well-known/api-catalog/ route by using a relative import in that route, because oxlint currently misses @/* aliases inside hidden route directories.

Performance Notes (Optional)

  • Keeps Starlight shared CSS externalized instead of forcing repeated inline CSS in each docs HTML payload.
  • Makes bundle reports opt-in so analyzer output is not emitted as a crawlable landing page by default.

Extra Context / Decisions (Optional)

  • This is intentionally a hard rewrite with no backward compatibility shim re-exports for the old landing paths.
  • The hidden .well-known route is the only intentional exception to the @/* import style because of the type-aware oxlint resolver behavior noted above.

Verification

  • bun run format
  • bun run lint --type-aware --type-check
  • bunx turbo typecheck --json --filter=@onequery/landing
  • bunx turbo test --json --filter=@onequery/landing
  • bun run landing:build
  • Pre-push hook: lint-full

Video / Screenshot (Optional)

  • N/A

@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
onequery-landing 9849e8f Commit Preview URL

Branch Preview URL
Jun 01 2026, 07:03 AM

@lentil32 lentil32 changed the title feat(landing): add connector SEO pages feat(landing): add connector SEO pages VLN-725 Jun 1, 2026
@lentil32 lentil32 merged commit 0a076b7 into main Jun 1, 2026
9 checks passed
@lentil32 lentil32 deleted the docs-connector branch June 1, 2026 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant