Introduction
Zero-dependency TypeScript utilities for backends
Semola is a toolkit of small, type-safe packages for building backends. Install once, then import only the pieces you need:
import { Api } from "semola/api";
import { mightThrow } from "semola/errors";
import { Queue } from "semola/queue";No runtime dependencies. Validation works with any Standard Schema library (Zod, Valibot, ArkType, and others).
What you can build with
| You need… | Start here |
|---|---|
| HTTP APIs with OpenAPI | API |
| Background jobs | Queue |
| Durable multi-step work | Workflow |
| SQL / SQLite data access | ORM |
| Authorization rules | Policy |
| Errors without try/catch | Errors |
Also available: PubSub, Cron, Cache, i18n, Logging, CLI, Prompts, and Extra helpers.
Next step
Getting Started walks through install and a small working API.