Skip to content

sssx-dev/sssx

SSSX

Twitter URL Twitter URL Youtube URL

GitHub license npm npm downloads total npm downloads GitHub watchers GitHub stars GitHub forks open bugs total open issues GitHub pull requests

Fast Svelte Static Site X – SSG/SSR focused on SEO for multi-million pages websites

This framework is built to deliver fast generation of millions of pages and reduce deployment costs, while providing great development experience.

npm install -g sssx

Name

Definition Abbreviation
Svelte Static Site Generator SSSG
Svelte Server Side Rendering SSSR
= SSSX

Demo

YouTube demo

IMAGE ALT TEXT

Overview

Why another SSG?

This project was created from the need to manage sites with millions of pages, with making static site generation a primary use case, and SEO optimisation its first goal.

Philosophy

This framework was created to address several things that are lacking in current frameworks:

  1. SEO first
  2. Links and URLs first
  3. Designed for websites with millions of pages

Features

  • 🦕 First-class Deno support
  • 📈 Incremental updates sssx build <url>.
  • 🚀 It's fast! 1000ms or less spent on building each page.
  • 👍 Each page is it's own SPA. Fully autonomous.
  • 💦 Hydration using Svelte components.
  • 📦 Small size of JavaScript overhead, thanks to Svelte.
  • 💪 ESM first, no more enormous CommonJS bundles, thanks to Esbuild.
  • 🕸️ Out of box SEO features: metatags, i18n, web vitals, robots, sitemap, etc.
  • 🧩 Plugin system with lifecycle hooks (onBuildStart, onAfterRoute, transformHTML, etc.)
  • 🎨 Theme system for reusable layouts and components.
  • 📡 Auto-generated RSS feed, robots.txt, and 404 page.
  • 🔗 JSON-LD structured data (Article/WebPage schema) on every page.
  • 🐦 Open Graph and Twitter Card meta tags from frontmatter.
  • 🖼️ Image utilities: responsive images, <picture> elements, content-hashed copies.
  • ♻️ Client bundle deduplication via content hash — identical routes share JS bundles.
  • 📁 JSON data files alongside markdown — locale-aware .json merged into props.
  • 📊 Differential builds — sssx diff only rebuilds changed pages + affected tags/pagination.
  • 🖼️ Image pipeline — content-hashed copies, image map, markdown image rewriting.
  • 📄 Pagination helper — paginate() and taxonomyPages() for blog listings.
  • 🎨 Svelte components — <SEO>, <JsonLD>, <Image> for pages.
  • 🔒 Security headers — CSP, Permissions-Policy, X-Frame-Options auto-generated.
  • 📦 Build manifest — build-manifest.json for CI/CD and deployment tools.
  • 🏠 Host anywhere. It's just HTML files with bunch of CSS and JS files.
  • ⚡️ You can generate one URL or millions. No need to rebuild whole website each time.
  • 😎 Development Experience is our priority!
  • 5️⃣ Supports Svelte 5.

Cluster mode

To run SSSX in cluster mode to use all available CPU cores use the following command:

sssx cluster

Here's a demonstration of generating 1000+ URLs under 30 seconds:

1000 urls in cluster mode in real time

Documentation

When you render millions of static pages, you don't want to rerender all of them each time. SSSX enables you to finetune which pages has to be updated and when.

Structure

This repository is structured as a monorepo and uses workspaces.

Packages

  • sssx main package
  • example Example website project built with SSSX

Getting started

Create a new project:

npx sssx init my-site
cd my-site
npm install
npx sssx dev open

Or run the example project:

cd packages/example
npm install
npx sssx dev open

Run build cluster using deno:

deno \
    --allow-read \
    --allow-env \
    --allow-sys \
    --allow-write \
    --allow-run \
    ../../node_modules/.bin/sssx cluster

Development

cd packages/example
../sssx/src/cli.ts dev open

CLI

sssx dev              # Development server with live reload
sssx dev --port 3000  # Custom port
sssx build            # Production build
sssx build /about/    # Build single URL
sssx diff             # Differential build — only changed + affected pages
sssx cluster          # Build using all CPU cores
sssx urls             # List all routes
sssx urls --json      # List routes as JSON
sssx info             # Show project info
sssx clean            # Remove generated files
sssx init <name>      # Scaffold new project
sssx serve            # Serve production build locally
sssx check            # Validate project setup
sssx --version        # Show version

Debug Page

/__debug — rich HTML page showing all routes with stats, badges, and clickable links. Dev mode only.

Configuration

// sssx.config.ts
import type { Config } from "sssx";

const config: Config = {
  title: "My Site",
  site: "https://example.com",
  minify: true,        // Minify JS in production
  rss: true,           // Auto-generate RSS feed
  generate404: true,   // Auto-generate 404 page
  plugins: [],         // SSSX plugins
};

export default config;

Documentation

Contributing

See CONTRIBUTING.md for setup, testing, and guidelines. PRs are welcome!

License

Copyright © 2022-2026 Eugene Hauptmann

MIT

About

Fast Svelte Static Site X – SSG/SSR focused on SEO for multi-million pages websites

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors