ATLAS

Everything at once, for readers who already know what they want.

Web
19
Desktop
5
Stations
30
Install bun add @wess/atlas

Package constellation

Choose a module to open its canonical field reference.

Desktop crates

The other half of Atlas: a Rust workspace on gpui and guise. Five layered crates behind one facade, and gpui confined to the top of the stack.

Every station

The survey has 30 sections. Reading them in order spoils the walk, which is the only reason they are numbered out of it.

First route

Open the full quick start
import { defineConfig, env } from "@wess/atlas/config"
import { connect } from "@wess/atlas/db"
import { get, json, serve } from "@wess/atlas/server"

const config = defineConfig({ port: env("PORT", { parse: Number, default: "3000" }) })
const db = connect({ driver: "sqlite", path: "./app.db" })

serve({ port: config.port, routes: [get("/health", (c) => json(c, 200, { ok: true }))] })

The system stays shallow.

Atlas wraps Bun and the web platform. It does not make a second runtime underneath them.

Compose
Each package works alone. Pipes and shallow sibling imports connect the pieces.
Keep data immutable
Transforms return new values. Functions replace stateful class hierarchies.
Use Bun directly
Servers, SQL, Redis, passwords, files, and environment loading stay Bun-native.
Type to search guides and package references.