90 lines
3.6 KiB
Markdown
90 lines
3.6 KiB
Markdown
# Quickstart: Website Information Architecture / Core Pages
|
|
|
|
## Purpose
|
|
|
|
This quickstart describes the local workflow for implementing the Spec 215 public-route and navigation contract in `apps/website`.
|
|
|
|
## Prerequisites
|
|
|
|
- Node 20+ available through the repo workspace tooling
|
|
- Corepack-enabled pnpm
|
|
- Repo root at `wt-website`
|
|
|
|
## Local Development
|
|
|
|
Start the website from the repo root:
|
|
|
|
```bash
|
|
corepack pnpm dev:website
|
|
```
|
|
|
|
The website must continue to honor the existing `WEBSITE_PORT` contract.
|
|
|
|
## Expected Implementation Order
|
|
|
|
Implement the feature in this order:
|
|
|
|
1. Audit the current public-route truth in `apps/website/src/lib/site.ts`, `apps/website/src/types/site.ts`, `apps/website/src/content/pages`, and `apps/website/src/pages`.
|
|
2. Update the route and navigation contract so the canonical core is `/`, `/product`, `/trust`, `/changelog`, `/contact`, `/privacy`, and `/imprint`.
|
|
3. Add the missing core pages (`/changelog`, `/imprint`) and replace `/security-trust` as the canonical trust route with `/trust`.
|
|
4. Shrink header and footer navigation to the Spec 215 core, keeping only one primary conversion route, gating optional `Resources` links on actual content readiness, and leaving the `articles` collection unpublished.
|
|
5. Rationalize current non-core routes such as `/solutions`, `/integrations`, `/legal`, and `/terms` as retained secondary surfaces without giving them core-route prominence.
|
|
6. Update sitemap, canonical route generation, and smoke tests to reflect the new IA contract.
|
|
7. Re-run build and smoke validation.
|
|
|
|
## Working Constraints
|
|
|
|
The implementation must preserve all existing website working-contract guarantees:
|
|
|
|
- keep `@tenantatlas/website` unchanged
|
|
- keep `WEBSITE_PORT` unchanged
|
|
- keep root `dev:website` and `build:website` workflows working
|
|
- keep all IA changes local to `apps/website`
|
|
- do not introduce platform runtime coupling, shared auth, or shared DTO/API assumptions
|
|
- do not publish placeholder top-level routes
|
|
- keep Trust visible in primary navigation
|
|
- keep `/contact` as the one clear primary conversion path in the header
|
|
|
|
## Required Validation
|
|
|
|
Run the website build proof from the repo root:
|
|
|
|
```bash
|
|
corepack pnpm build:website
|
|
```
|
|
|
|
Run the browser smoke suite from the website app:
|
|
|
|
```bash
|
|
cd apps/website
|
|
corepack pnpm exec playwright test
|
|
```
|
|
|
|
If an Astro dev server is already running on `WEBSITE_PORT`, stop it before rerunning Playwright so the suite exercises a fresh server state.
|
|
|
|
## What Reviewers Should Verify
|
|
|
|
Reviewers should confirm that:
|
|
|
|
- the canonical core routes load correctly: `/`, `/product`, `/trust`, `/changelog`, `/contact`, `/privacy`, `/imprint`
|
|
- the brand still routes to `/`
|
|
- Trust is visible in top-level navigation
|
|
- Product, Trust, Changelog, and Contact are easier to discover than any optional or deferred surfaces
|
|
- `/resources` stays hidden unless substantive content exists, and the `articles` collection remains unpublished
|
|
- any retained compatibility paths are explicit and do not create duplicate canonical truth
|
|
- sitemap and canonical links reflect the canonical route set
|
|
- no `apps/platform` coupling is introduced
|
|
|
|
## Validation Status
|
|
|
|
- 2026-04-19: `corepack pnpm build:website` passed.
|
|
- 2026-04-19: `cd apps/website && corepack pnpm exec playwright test` passed with 13 smoke tests.
|
|
|
|
## Out of Scope for This Feature
|
|
|
|
- Hero or section composition
|
|
- Final production copy for the individual pages
|
|
- Resources activation or later editorial/blog implementation unless actual content is added as part of the same delivery
|
|
- Pricing, Docs, Customers, Compare, Careers, or Status surfaces
|
|
- Any `apps/platform` routing, theming, or auth behavior
|