Introduce a Library page and wire it into the main nav.
Add blog frontmatter fields: category, featuredEssay (default false),
and readingOrder (positive integer). Update several posts to mark
featured essays and assign readingOrder for the recommended path.
- Add optional series field to blog collection schema (name, part)
- Update blog route to collect and sort series posts, boost related
scoring when series matches, and render a series section with styles
and responsive tweaks
- Add "Coffee & Code #1" blog post markdown for the new series
Add new post "After the Silence". Update content schema to use
pubDate and include tags (default empty). Update blog listing,
post page and start page to use pubDate, render tag lists, and
compute/show up to two related posts by tag overlap. Misc
formatting and small display tweaks.
Harden nginx: add CSP, HSTS, Referrer-Policy and Permissions-Policy;
include image/svg+xml in gzip types; set X-Content-Type-Options on
static assets; change try_files to return =404.
Add Nav component and wire into BaseLayout; add About and Projects
pages with projects.json, an initial blog post, and small layout/padding
adjustments (removed redundant back links).
Introduce blog support: content collection schema, listing and post
routes, and a sample Markdown post. Update docs and TODO; add blog
assets dir and adjust color variables in docs. Also set
absolute_redirect off in nginx.conf for container routing.