Convention-first static sites

Ship the site. Skip the sprawl.

Swifty turns Markdown and a familiar folder structure into polished, searchable sites—with fast builds, smart navigation, and no browser-side dependency pile.

three commands to a live site
$ npm install -g @daz4126/swifty
$ swifty new my-site
$ cd my-site && swifty start
✓ ready at localhost:3000
Localsearch + themes
Nativefile watching
Cleanstatic output

Small core, useful defaults

The conveniences you want. None of the ceremony.

Start with Markdown. Add layouts, data, feeds, discovery, and publishing controls only when the site needs them.

pages/ → routes

Folders become a website

Pretty URLs, nested sections, layouts, tags, breadcrumbs, and previous/next links follow your content structure.

Explore pages →
search + collections

Discovery is built in

Ship bounded client-side search, related content, archives, recent-post lists, and custom navigation without a plugin.

Add search →
anchors + toc

Documentation-ready

Stable heading IDs, nested tables of contents, syntax highlighting, and internal-anchor checks make deep docs dependable.

Build docs →
drafts + dates

Publish on your terms

Preview drafts and scheduled posts, generate RSS and sitemaps, and keep display dates deterministic across local and CI builds.

Preview content →
morpheus navigation

Fast feels instant

Intent prefetching and focused DOM morphing make same-origin navigation fluid while every route remains plain static HTML.

Tune navigation →
swifty check

Confidence before deploy

Catch duplicate routes, broken links and anchors, missing assets, malformed config, and invalid canonical URLs before shipping.

Check a build →

Made for the whole internet

Fast online. Fully useful offline.

Swifty’s generated search UI, Morpheus navigation client, Idiomorph runtime, and highlight.js themes are served from your own site. Air-gapped builds and privacy-conscious deployments work without special treatment.

  • No CDN stylesheet requests
  • No hosted search service
  • No framework runtime required
  • No polling unless you opt in

From the page collection

Start with the essentials.

This grid is rendered from Swifty’s immutable collections.pages template global.

Folder Structure

How to organize your Swifty project.

Read guide →

The Template File

The master wrapper for your entire site.

Read guide →