How kraafter/kraaftersite-v3 works
Kraafter.me is a personal serverless website built with Svelte. Visitors browse a homepage, blog, gallery, and informational pages; blog listings load published post metadata through an API, while RSS reuses that API. Gallery endpoints fetch media listings from ImageKit, and a sitemap endpoint combines post and media slugs. The tree documents additional gallery categories and informational pages, but their internal wiring was not sampled, so those links are omitted.
Main entry points: +server.ts Post API · +page.svelte Homepage · blog Blog pages · gallery Gallery APIs
Components 12
Site content
- Homepage
src/routes/+page.svelte - About pages
src/routes/about - Projects pages
src/routes/projects - Contact page
src/routes/contact/+page.svelte - Blog pages
src/routes/blog - Post API
src/routes/api/blog/+server.ts
Gallery and media
- Gallery pages
src/routes/gallery - Gallery APIs
src/routes/api/gallery
Feeds and discovery
- RSS feed
src/routes/blog/rss.xml/+server.ts - Sitemap endpoint
src/routes/sitemap.xml/+server.ts
Other components
- Visitor
- ImageKit
Connections 11
- Visitor → Homepage: browses
- Visitor → About pages: browses
- Visitor → Projects pages: browses
- Visitor → Contact page: browses
- Visitor → Blog pages: browses
- Visitor → Gallery pages: browses
- Homepage → Post API: fetches posts
- Blog pages → Post API: fetches posts
src/routes/blog/+page.server.ts - RSS feed → Post API: fetches posts
src/routes/blog/rss.xml/+server.ts - Gallery APIs → ImageKit: fetches listings
src/routes/api/gallery/art/+server.ts - Sitemap endpoint → ImageKit: fetches listings
src/routes/sitemap.xml/+server.ts