Source for resolve.works — the site of Resolve., the software and data engineering practice of Johan Schuijt: LLM extraction and search, interfaces for working with data, and the full stack underneath — for organizations doing work that matters.
The site is fully static: prerendered HTML/CSS/JS, no database, no CMS. All content lives in this repo.
- SvelteKit 2 + Svelte 5, mdsvex for article markdown,
@sveltejs/adapter-static - D3 for the embedding scatter visualizations (the only runtime dependency)
- Social cards prerendered from hand-serialized SVG to PNG with resvg
- pnpm for dependencies
pnpm install # install dependencies
pnpm dev # dev server (http://localhost:5173)
pnpm build # prerender the static site into build/
pnpm preview # serve the built site locallyArticles are mdsvex routes at src/routes/articles/(posts)/<slug>/+page.md,
with title, intro, date and description frontmatter. Everything else is
Svelte markup under src/routes.
After changing any page content:
pnpm generateThis regenerates the article index, related-article data, embeddings, markdown
siblings and social cards, rebuilding between steps. The individual generators
(generate-index, generate-related, generate-embeddings,
generate-markdown, generate-og) can also be run separately. Also update the
affected lastmod values in static/sitemap.xml.
src/lib/data/articles.json, src/lib/data/related.json,
static/embeddings.json, static/**/index.md and static/og/ are generated —
never hand-edit them. static/llms.txt is curated by hand.