Quickstart
Requires Install (stable Rust; Node for UI / codegen paths). Pick one path. They are independent.
Path A: Playground (no server)
In-tab wasm engine. Durable OPFS when the browser allows it; otherwise session memory.
Hosted: play.eelgrass.dev
Local:
cd clients/studio && npm install && npm run build:wasm && npm run dev:playground
# open http://127.0.0.1:5173/?local=1On a phone: Examples → Build or Code → Results, with sticky Run in the footer. Details: Playground.
Path B: eelgrass run with examples
Open (or create) a local database directory, apply a schema, execute query files, print rows:
cargo run -p eelgrass-cli -- run ./mydb examples/demo_schema.eel examples/demo_queries.eeldemo_queries.eel inserts sample users, then filters and selects. Schema is examples/demo_schema.eel (Users with Money, enums, @index on email).
More sample language: examples/storefront.eel, named queries under examples/queries/. See Examples.
Path C: Studio (serve-backed)
Studio is a Vue UI over eelgrass serve. Studio talks to the HTTP API. It does not open page files itself.
HMR (API on :8787, UI on :5173):
cd clients/studio && npm run devCLI serves a built dist and opens the browser:
cd clients/studio && npm run build:wasm && npm run build && cd ../..
cargo run -p eelgrass-cli -- studio ./mydb-studio examples/demo_schema.eel --ui clients/studio/distThe URL includes a bearer token. Use the Examples rail for runnable demos; toggle Write mode before mutations.
Details: Studio.
Path D: Named queries + TypeScript codegen
Named .eel files are the primary app surface (sqlc-like). From clients/typescript:
cd clients/typescript && npm install && npm run build
node bin/eelgrass-codegen.mjs --config ../../examples/eelgrass.config.jsonConfig (examples/eelgrass.config.json) points at demo_schema.eel and queries/**/*.eel, and writes under outDir.
Typecheck named queries without codegen:
cargo run -p eelgrass-cli -- typecheck-queries examples/demo_schema.eel examples/queries/users.eelDetails: Named queries and TypeScript client.
Where next
- What is Eelgrass?: founding bets
- Status: capability contract
- Language: schemas and pipelines