<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Judd</title>
    <description>The latest articles on DEV Community by Judd (@juddisjudd).</description>
    <link>https://dev.to/juddisjudd</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2424927%2Fa491119a-d31b-43e0-8869-3cac1fa70c1f.png</url>
      <title>DEV Community: Judd</title>
      <link>https://dev.to/juddisjudd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juddisjudd"/>
    <language>en</language>
    <item>
      <title>Why I built SVOCS: Svelte-first docs in 2026</title>
      <dc:creator>Judd</dc:creator>
      <pubDate>Thu, 16 Jul 2026 08:53:34 +0000</pubDate>
      <link>https://dev.to/juddisjudd/why-i-built-svocs-svelte-first-docs-in-2026-13mk</link>
      <guid>https://dev.to/juddisjudd/why-i-built-svocs-svelte-first-docs-in-2026-13mk</guid>
      <description>&lt;h3&gt;
  
  
  The Frustration That Started It All
&lt;/h3&gt;

&lt;p&gt;In 2026, building great documentation should be simple. You write Markdown (or MDX-like files), get beautiful navigation, search, theming, and interactivity—and ship a fast, static site.&lt;/p&gt;

&lt;p&gt;Yet most tools felt... off for me.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React-heavy ecosystems&lt;/strong&gt;: Docusaurus, Nextra, Fumadocs, Vocs, and many others are excellent—but they're built around React (or Next.js). If you're in the Svelte/SvelteKit world, you're either porting styles/components awkwardly or dealing with framework mismatch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dated or convoluted alternatives&lt;/strong&gt;: Some older generators lack modern polish (no runes, weak component integration, sluggish builds). Others bury you in complex config files, fragile plugins, or heavy dependencies.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The "just works" gap&lt;/strong&gt;: I wanted file-system routing from folders, &lt;code&gt;_meta.json&lt;/code&gt; for clean ordering, zero-config full-text search, and seamless Svelte components inside Markdown.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So I did what any self-respecting developer does when annoyed enough: &lt;strong&gt;I built it myself&lt;/strong&gt;. For the sake of building it, yes—but mostly because I wanted a docs tool that &lt;em&gt;feels&lt;/em&gt; like Svelte.&lt;/p&gt;

&lt;p&gt;Meet &lt;strong&gt;&lt;a href="https://svocs.dev/" rel="noopener noreferrer"&gt;SVOCS&lt;/a&gt;&lt;/strong&gt; — Beautiful docs with Svelte &amp;amp; Markdown.&lt;/p&gt;

&lt;h3&gt;
  
  
  What SVOCS Actually Is
&lt;/h3&gt;

&lt;p&gt;SVOCS is a Svelte-first static documentation site generator. Drop Markdown (&lt;code&gt;.md&lt;/code&gt;) or enhanced Svelte Markdown (&lt;code&gt;.svx&lt;/code&gt;) into a &lt;code&gt;content/&lt;/code&gt; folder, and you get:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;File-system routing&lt;/strong&gt; — Folders = routes. &lt;code&gt;_meta.json&lt;/code&gt; handles titles, ordering, and grouping. No maze of config files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Full-powered UI out of the box&lt;/strong&gt; — Top nav, sidebar tree, breadcrumbs, table of contents, heading anchors, reading time, dark/light mode.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero-config search&lt;/strong&gt; — Pagefind indexes everything at build time. Fast, client-side, no servers or API keys. (Plus pluggable backends: Orama, FlexSearch, etc.)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Markdown meets real Svelte&lt;/strong&gt; — Write fast in Markdown. Drop live interactive Svelte components wherever you need them. Perfect for demos, charts, etc.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runes-first reactivity&lt;/strong&gt; — Built with Svelte 5 runes. Theme state, sidebar, search—all modern Svelte, no legacy stores.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tiny &amp;amp; fast&lt;/strong&gt; — Static export via &lt;code&gt;adapter-static&lt;/code&gt;. ~100KB JS gzipped, 95+ Lighthouse scores, quick cold builds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flexible tooling&lt;/strong&gt; — First-class support for Bun, pnpm, Deno. Works with your preferred runtime.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Batteries included&lt;/strong&gt; — SEO + sitemap, copy/view as Markdown, &lt;code&gt;llms.txt&lt;/code&gt; for AI tools, Mermaid diagrams, LaTeX math, accent-color theming, sub-path deploys, and even AI-generated docs from a repo.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Quick start feel&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;bun run dev   &lt;span class="c"&gt;# or pnpm / deno&lt;/span&gt;
➜ ready &lt;span class="k"&gt;in&lt;/span&gt; ~300ms
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Why "For the Sake of Building It" Matters
&lt;/h3&gt;

&lt;p&gt;Yes, there was a practical need. But honestly? Building SVOCS was fun. Svelte 5's runes make state management delightful. The compiler's power lets you push a lot to build time. And integrating something like Pagefind feels seamless.&lt;/p&gt;

&lt;p&gt;In a React-dominated docs landscape, carving out a native Svelte path felt like the right itch to scratch.&lt;/p&gt;

&lt;p&gt;If you're already in SvelteKit, this means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No context-switching between frameworks.&lt;/li&gt;
&lt;li&gt;Full access to your existing Svelte components.&lt;/li&gt;
&lt;li&gt;The joy of runes everywhere.&lt;/li&gt;
&lt;li&gt;A docs site that ships as tiny static files.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Who Is It For?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Svelte/SvelteKit users tired of React-centric tools.&lt;/li&gt;
&lt;li&gt;Open-source maintainers wanting polished, low-maintenance docs.&lt;/li&gt;
&lt;li&gt;Teams that value simplicity, performance, and Git-based workflows (Markdown in repo = ownership and history).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Try It Yourself
&lt;/h3&gt;

&lt;p&gt;Head to &lt;a href="https://svocs.dev/" rel="noopener noreferrer"&gt;https://svocs.dev/&lt;/a&gt; and explore the starter docs.&lt;/p&gt;

&lt;p&gt;Quick start (from the site):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Scaffold a new project.&lt;/li&gt;
&lt;li&gt;Add content in &lt;code&gt;content/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;bun run dev&lt;/code&gt; (or equivalent) and iterate.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The full docs cover components, theming, search backends, AI features, deployment, and more.&lt;/p&gt;

&lt;h3&gt;
  
  
  What's Next?
&lt;/h3&gt;

&lt;p&gt;SVOCS is young and opinionated (by design). I'd love feedback from the community—especially on pain points it solves (or doesn't yet).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Star it / open issues on GitHub (link in the footer of svocs.dev).&lt;/li&gt;
&lt;li&gt;Share your docs sites built with it.&lt;/li&gt;
&lt;li&gt;What missing feature would make this your default?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Svelte ecosystem keeps growing because we build the tools we want to use. SVOCS is my contribution to that.&lt;/p&gt;

&lt;p&gt;Thanks for reading—now go write some docs that don't suck.&lt;/p&gt;

</description>
      <category>svelte</category>
      <category>documentation</category>
      <category>typescript</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
