← Tools

The base framework

jst

the build stage

The agent-proven SvelteKit starter you scaffold a new app on.

npm install
npm run dev

Use the repo as a GitHub template to spin up a new app, then install and run. It boots with an empty environment — no database or auth required to start.

01 · What it is

A stack you can read in an evening

jst is the public base framework of the jatstack — the readable SvelteKit starter you scaffold a new app on. It is deliberately small (~50 files): SvelteKit 2 + Svelte 5, Tailwind 4, DaisyUI 5, and jatstack's own jatui component set, all typed, with a database and auth layer included but dormant until you switch them on.

Small on purpose: you can read the whole template end to end, and that is the point. Build on a stack you actually understand — one a fleet of coding agents can navigate end to end without guessing. It occupies the Build stage of the loop: the thing you scaffold, then hand to jat's agents to grow.

Proven in production: the same baseline underpins real jatstack apps shipping today. MIT-licensed and public — clone it, read it, keep what you need.

02 · What's in the box

A baseline, not a boilerplate maze

SvelteKit 2 + Svelte 5

Runes, the current router, server + client in one framework.

Tailwind 4 + DaisyUI 5

Utility CSS with a semantic component/theme layer on top.

jatui

The shared jatstack component set — the same primitives this site is built from.

TypeScript + vitest

Typed end to end, with a test runner already wired.

Drizzle + Postgres

dormant

A typed data layer — included but dormant until you set DATABASE_URL.

Better Auth

dormant

Email/session auth and a /login route — dormant until the database is on.

03 · Usage

Scaffold now, add data when you need it

Scaffold

# use as a GitHub template, then:
npm install
npm run dev

Boots with an empty environment. Visit /notes to see the example module.

Add a database

cp .env.example .env   # set DATABASE_URL + BETTER_AUTH_SECRET
npm run db:generate && npm run db:migrate
npm run dev

Setting DATABASE_URL turns on the data layer, auth, and the /login route.

How it fits

The floor the apps stand on

jat orchestrates the agents; jst is what they build on. Scaffold an app from the template, then fan a fleet of agents across it — a stack small enough to read is a stack an agent can change safely. It is the Build stage between planning the work and shipping it.

See how the stack fits together

The full template, its example module, and setup on GitHub.

View on GitHub