tleininger
|
455b603299
|
Extract date rendering into per-feature Date components
|
2026-09-25 08:49:44 +02:00 |
|
tleininger
|
c7c55c0c6c
|
Let editors define FAQ topics freely instead of a hard-coded map
|
2026-09-24 14:49:15 +02:00 |
|
tleininger
|
01d25eb04b
|
Take the page heading from the Markdown body, not a separate <h1>
|
2026-09-24 14:26:35 +02:00 |
|
tleininger
|
e242eaf79a
|
Serve 503 when PocketBase is unavailable across all content pages
|
2026-09-24 13:00:14 +02:00 |
|
tleininger
|
0f7e968c16
|
Harden the content contracts and enforce the slug rule
|
2026-09-24 12:08:56 +02:00 |
|
tleininger
|
d06af2891a
|
Centralize the home slug check on Page, case-insensitively
|
2026-09-24 10:23:30 +02:00 |
|
tleininger
|
66bc76af1c
|
Define the all-day rule once as Event.HasTime
|
2026-09-24 10:08:04 +02:00 |
|
tleininger
|
3fd4068762
|
Serve the home nav link from PocketBase, not a hard-coded copy
|
2026-09-23 22:32:01 +02:00 |
|
tleininger
|
d7e708a717
|
Follow the OS dark mode with a softer, readable palette
|
2026-09-23 21:05:52 +02:00 |
|
tleininger
|
fa49f80d65
|
Give the site a warm design system with card-based content lists
|
2026-09-23 20:28:15 +02:00 |
|
tleininger
|
3fd3796d73
|
Generate navigation and render page embeds from PocketBase
|
2026-09-23 14:54:10 +02:00 |
|
tleininger
|
6b5d9dda55
|
Serve FAQs from PocketBase on a grouped /faqs page
|
2026-09-23 14:15:16 +02:00 |
|
tleininger
|
4136af6417
|
Serve pages and home from PocketBase, drop the file-based content layer
|
2026-09-23 13:30:48 +02:00 |
|
tleininger
|
da87716d97
|
Consume PocketBase for posts and events, with English routes
|
2026-09-23 13:09:22 +02:00 |
|
tleininger
|
251f2d818b
|
Add PocketBase client with contracts and sharp build tooling
|
2026-09-22 19:32:32 +02:00 |
|
tleininger
|
9d1f8fe0d4
|
Restructure into feature folders with code-behind and scoped CSS
|
2026-09-21 22:01:21 +02:00 |
|