Skip to content

Commit 0940572

Browse files
committed
Update CLAUDE.md: SvelteKit stack, static/ dir, SEO/Cloudflare/Bing state
1 parent ea6125a commit 0940572

File tree

1 file changed

+38
-14
lines changed

1 file changed

+38
-14
lines changed

CLAUDE.md

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ Marketing site for Sovren Software at `sovren.software`.
66

77
## Stack
88

9-
- **Framework**: Vite + Svelte 5
10-
- **Router**: svelte-spa-router (hash-based — required for GitHub Pages static hosting)
11-
- **Font**: Geist Mono Variable (self-hosted, `public/fonts/GeistMono-Variable.woff2`)
9+
- **Framework**: SvelteKit + `@sveltejs/adapter-static` (prerendered static site)
10+
- **Font**: Geist Mono Variable (self-hosted, `static/fonts/GeistMono-Variable.woff2`)
1211
- **Deploy**: GitHub Actions → `sovren-software.github.io`, CNAME `sovren.software`
12+
- **CDN**: Cloudflare proxy in front of GitHub Pages (enables crawler access, hides Fastly)
13+
- **Search**: Bing Webmaster Tools verified, sitemap submitted
1314

1415
## Design System
1516

@@ -27,18 +28,41 @@ White `#ffffff` contrast sections are used for overview/CTA blocks within produc
2728

2829
## Routing
2930

30-
| Hash route | Page |
31+
SvelteKit file-based routing. All routes prerendered via `+layout.js` (`export const prerender = true`).
32+
33+
| URL | File |
34+
|---|---|
35+
| `/` | `src/routes/+page.svelte` |
36+
| `/augmentum` | `src/routes/augmentum/+page.svelte` |
37+
| `/visage` | `src/routes/visage/+page.svelte` |
38+
| `/mrhaven` | `src/routes/mrhaven/+page.svelte` |
39+
| `/ecosystem` | `src/routes/ecosystem/+page.svelte` |
40+
| `*` | `src/routes/+error.svelte` |
41+
42+
Active nav state: `import { page } from '$app/stores'``$page.url.pathname.startsWith(path)` in `src/lib/Nav.svelte`.
43+
44+
Page transitions: `{#key $page.url.pathname}` with `in:fade`/`out:fade` in `src/routes/+layout.svelte`.
45+
46+
## Static Assets
47+
48+
All static files live in `static/` (NOT `public/` — SvelteKit convention). Copied verbatim to `dist/` at build time.
49+
50+
| File | Purpose |
3151
|---|---|
32-
| `#/` | Home |
33-
| `#/augmentum` | Augmentum.svelte |
34-
| `#/visage` | Visage.svelte |
35-
| `#/mrhaven` | MrHaven.svelte |
36-
| `#/ecosystem` | Ecosystem.svelte |
37-
| `*` | NotFound.svelte |
52+
| `static/CNAME` | GitHub Pages custom domain — do not delete |
53+
| `static/robots.txt` | Crawler access — allows all, points to sitemap |
54+
| `static/sitemap.xml` | All 5 routes with clean URLs |
55+
| `static/llms.txt` | AI crawler context (ChatGPT, Perplexity, Claude) |
56+
| `static/BingSiteAuth.xml` | Bing Webmaster Tools verification |
57+
| `static/fonts/GeistMono-Variable.woff2` | Self-hosted font |
3858

39-
Active nav state: `import { location } from 'svelte-spa-router'``$location.startsWith(path)` in Nav.svelte.
59+
## SEO / AI Discoverability
4060

41-
Page transitions: `{#key routeKey}<div in:fade={{ duration: 150, delay: 50 }} out:fade={{ duration: 100 }}><Router {routes}/></div>{/key}` in App.svelte.
61+
- `src/app.html` — global JSON-LD (Organization + WebSite schemas)
62+
- Each `+page.svelte``<svelte:head>` with unique title, description, og:title, og:description, og:url
63+
- `static/llms.txt` — full product descriptions for AI crawlers
64+
- Cloudflare proxy — prevents GitHub/Fastly from blocking ChatGPT Browse proxy IPs
65+
- Bing Webmaster Tools — verified, sitemap submitted
4266

4367
## Copy Philosophy
4468

@@ -87,9 +111,9 @@ npm run build # verify build passes before pushing
87111
git push # GitHub Actions auto-deploys from main branch
88112
```
89113

90-
CNAME file at `public/CNAME` contains `sovren.software` — Vite copies it to `dist/` at build time. Do not delete it.
114+
CNAME file at `static/CNAME` contains `sovren.software`. Do not delete it.
91115

92-
GitHub Pages custom domain is set via API (`gh api repos/sovren-software/sovren-software.github.io/pages`). DNS is 4 A records (185.199.108-111.153) + www CNAME at Namecheap.
116+
DNS: 4 A records (185.199.108-111.153) + www CNAME `sovren-software.github.io`. All proxied through Cloudflare.
93117

94118
## Known Limitations
95119

0 commit comments

Comments
 (0)