Commit graph

10 commits

Author SHA1 Message Date
98212889bf chore: README, dependency cleanup and shared components
- Replace the create-next-app README with real project docs (features,
  env vars, frontmatter schema, Markdown extensions, deployment)
- Drop ESLint (unused by any script; oxlint is the linter) and the
  unrelated 'hast' package; move oxlint, oxfmt and puppeteer to
  devDependencies (locked versions unchanged)
- Extract PostList, used by the tag and category pages
- Use shared Intl formatters for post dates, pinned to Europe/Prague so
  the build server's timezone can't shift dates
- Use <h1> for the tag/category page headings (same styling)
- Remove math/mermaid flags from posts that don't use them; fix a typo
  in the Tessera cover alt text

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 14:25:58 +02:00
fd96e4b7fc feat(seo): sitemap, robots, canonical URLs, OG images and JSON-LD
- Add sitemap.ts and robots.ts
- pageMetadata() helper: consistent title, canonical URL, Open Graph,
  Twitter card and feed alternate on every page
- Generated OG images: a site card, and per post either the cover image
  or a branded title card (pre-rendered at build)
- BlogPosting JSON-LD on post pages
- Fail fast with a clear error when SITE_URL is missing

Content loading:
- Validate post frontmatter at build time and normalize dates to ISO
  (fixes invalid <time datetime> values)
- Add draft: true support (drafts only render in development)
- Cache markdown rendering so metadata and page share one render
- Replace the three copy-pasted about/projects/setup pages with a shared
  MarkdownPage component

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 14:22:40 +02:00
89a0566feb fix: tag/category routes, recently updated list, feed and no-js flash
- Slugify tag/category static params so pre-rendered pages match links;
  disable dynamic params and return a real 404 via notFound()
- Drop bogus generateStaticParams from the tags/categories index pages
- Add a styled not-found page
- Sort 'Recently updated' by last modification before slicing
- Atom feed: correct rel=self URL, use updated dates, valid content type
- Swap no-js -> js class in an inline head script before first paint
- Markdown links: only route internal paths through next/link and
  tolerate missing hrefs

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 14:15:57 +02:00
c61bcd3a41 Fixes for few tags and categories pages 2026-08-05 11:54:39 +02:00
25a9cbda8f Favicon and tags/categories pages fix 2026-08-04 09:51:06 +02:00
9b5fee37e2 Added tag pages 2026-08-04 08:06:05 +02:00
HangerThem
b8909cf9ce Added commit tracker/link to sidebar 2026-08-03 17:34:05 +02:00
HangerThem
1f6b769ea4 Added full SSG/Static support 2026-08-03 15:41:20 +02:00
HangerThem
b1de88f998 Fixed few formatting things; started on support for mobile/PWA 2026-08-03 15:11:10 +02:00
1a713fe1b6 Lil bit of cleanup 2026-08-03 12:33:39 +02:00