# onebase > A lightweight, Convex-style reactive backend: TypeScript functions, a typed document database and live queries in one executable. ## Docs - [Introduction](docs/index.md): What onebase is, what it's for, and how it compares to Convex. - [Quick start](docs/getting-started.md): Install onebase, run the example chat app, and create your first project. - [Schema](docs/schema.md): Define tables, field validators and indexes in schema.ts. - [Functions](docs/functions.md): Queries, mutations, actions, internal functions, validation and errors. - [Database](docs/database.md): Reading and writing documents with ctx.db — indexes, filters, ordering and pagination. - [Search](docs/search.md): Full-text search indexes — defining them, querying with withSearchIndex, filters, pagination and limits. - [Vector search](docs/vector-search.md): Vector indexes — defining them, ctx.vectorSearch in actions, filters, limits and how each database runs them. - [Client](docs/client.md): Use onebase from the browser, React, scripts and plain HTTP. - [Client protocol](docs/client-protocol.md): The /api/sync WebSocket and HTTP API contract that every onebase client implements. - [Swift client](docs/swift.md): Use onebase from iOS and macOS apps, with offline support and optimistic updates. - [Scheduling & crons](docs/scheduling.md): Run functions later with ctx.scheduler, or on a schedule with crons.ts. - [File storage](docs/file-storage.md): Upload, serve and delete files, on local disk or in S3, R2 or MinIO. - [Auth](docs/auth.md): Built-in sign-in with passwords and OAuth, sessions, external providers like Clerk and Auth0, and your own tokens. - [HTTP actions](docs/http-actions.md): Webhooks and custom HTTP endpoints with http.ts. - [Components](docs/components.md): Mount reusable backend packages with their own tables and functions, and call them as ctx.components..(). - [Rate limiter](docs/rate-limiter.md): Limit how often something happens per user, IP or anything else, with limits stored in the database and checked in the caller's transaction. - [Aggregate](docs/aggregate.md): Counts, sums, ranks and the n-th item over a table in O(log n), kept in step with the table automatically. - [Sharded counter](docs/sharded-counter.md): Counters that many writers can bump at the same time, split over several documents. - [Work queue](docs/work-queue.md): Run background actions and mutations with a limit on how many run at once, retries with backoff, and a callback when each finishes. - [Writing components](docs/components-authoring.md): Define a component's tables, functions and configuration with defineComponent, and publish it as an npm package. - [Deployment](docs/deployment.md): Ship onebase as one binary, push updates with onebase deploy, and run it behind a reverse proxy, with systemd or Docker. - [Dashboard](docs/dashboard.md): Browse and edit data, run functions, and watch logs, jobs and files at /_admin. - [Databases](docs/databases.md): SQLite, Postgres, MySQL or Turso — and running several instances against one database. - [Backups](docs/backups.md): Automatic SQLite snapshots to S3, and restoring them. - [CLI](docs/cli.md): Every onebase command and flag. - [Coming from Convex](docs/convex.md): What carries over from Convex, what differs, and how to port a project. - [How it works](docs/how-it-works.md): The architecture — storage, transactions, reactivity and the sync protocol. - [LLM guide](docs/llm-guide.md): A compact, complete guide to give an AI assistant that writes onebase code. ## Full text - [llms-full.txt](llms-full.txt): every page in one file