mirror of
https://github.com/Patiun/com.gregkilmer.www.git
synced 2026-11-07 19:58:24 +00:00
Phase 5: every page of the site, the resume PDF and RSS
Landing, About, Now, Resume (with a generated PDF), Work and case studies, Inquiries and the sent page, Library and the Shelf, Workshop and craft pages, Tabletop, Blog with topics and posts, RSS, the Store, product lines, the order form and the 404, all rendered from the content service's notes. Schema: experience previousRoles, skills stack core items, page stats, make tags and deck favorite. Icon names from notes map to brand icons in one place, and HTML comments are dropped when Markdown renders. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012aSbo2D1qP8cMFQCykf7kx
This commit is contained in:
@@ -79,3 +79,29 @@ SITE_DIR=… DATA_DIR=… CONTENT_TOKENS="reader:<24+ chars>" npm run content
|
||||
# the site
|
||||
CONTENT_URL=http://localhost:4310 CONTENT_TOKEN=<reader token> npm run site # http://localhost:4330
|
||||
```
|
||||
|
||||
For a local preview of drafts, set `CONTENT_INCLUDE_DRAFTS=true` with an editor
|
||||
or admin token. Never set it where the public can reach the site.
|
||||
|
||||
## The resume PDF
|
||||
|
||||
`/resume.pdf` is drawn with pdfkit from the same `resumeData()` as `/resume`
|
||||
(`src/lib/resume.ts`), so the two never disagree. It is one plain column so
|
||||
applicant tracking systems read it in order, uses the brand TTFs in
|
||||
`src/assets/pdf-fonts`, and is rebuilt only when the notes behind it change.
|
||||
The highlights row comes from the `/resume` Page text note's `stats`.
|
||||
|
||||
## Where each page lives
|
||||
|
||||
| Page | File | Helpers |
|
||||
| --- | --- | --- |
|
||||
| Landing, About, Now | `pages/index.astro`, `about.astro`, `now.astro` | `lib/home.ts`, `components/home` |
|
||||
| Resume and PDF | `pages/resume.astro`, `resume.pdf.ts` | `lib/resume.ts`, `lib/resume-pdf.ts` |
|
||||
| Work, case studies | `pages/work/` | `lib/work.ts`, `components/work`, `components/blog/PostLayout` |
|
||||
| Inquiries, sent, 404 | `pages/inquiries/`, `404.astro` | `lib/work.ts` |
|
||||
| Library, Shelf | `pages/library/` | `lib/library.ts`, `components/library` |
|
||||
| Workshop, crafts, Tabletop | `pages/workshop/`, `tabletop.astro` | `lib/world.ts`, `components/world` |
|
||||
| Blog, topics, posts, RSS | `pages/blog/`, `rss.xml.ts` | `lib/blog.ts`, `components/blog` |
|
||||
| Store, lines, order | `pages/store/` | `lib/store.ts`, `components/store` |
|
||||
|
||||
Forms post to `/api/inquiries` and `/api/orders`, which arrive in phase 6.
|
||||
|
||||
Reference in New Issue
Block a user