convex-backend README

The project's README from github.com/convex/convex-backend. As one markdown file: README.md.

Convex logo

Convex is the open-source reactive database designed to make life easy for web app developers, whether human or LLM. Fetch data and perform business logic with strong consistency by writing pure TypeScript.

Convex provides a database, a place to write your server functions, and client libraries. It makes it easy to build and scale dynamic live-updating apps. Read the docs to learn more.

Development of the Convex backend is led by the Convex team. We welcome small bug fixes and love receiving feedback. We keep this repository synced with any internal development work within a handful of days. Convex is a well tested piece of software, with several well designed test frameworks including randomized testing. Those tests are not provided as part of the open source offering.

Getting Started

Visit our documentation to learn more about Convex and follow our getting started guides.

The easiest way to build with Convex is through our cloud platform, which includes a generous free tier and lets you focus on building your application without worrying about infrastructure. Many small applications and side-projects can operate entirely on the free tier with zero cost and zero maintenance.

Self Hosting

The self-hosted product includes most features of the cloud product, including the dashboard and CLI. Self-hosted Convex works well with a variety of tools including Neon, Fly.io, Vercel, Netlify, RDS, Sqlite, Postgres, and more.

You can either use Docker (recommended) or a prebuilt binary to self host Convex. Check out our self-hosting guide for detailed instructions. Community support for self-hosting is available in the #self-hosted channel on Discord.

Community & Support

Building from source

See BUILD.md.

Disclaimers

Repository layout

convex-backend (convex/convex-backend)

Searching Database…

What is this?Convex is an open-source reactive database that lets web app developers fetch data and run business logic with strong consistency by writing pure TypeScript, instead of hand-rolling a backend.
Is this a database I run myself, or a hosted service?Both: the easiest path is Convex's managed cloud platform, but this repo also lets you self-host the full backend (dashboard and CLI included) via Docker or a prebuilt binary.
How do I get started with Convex?For the cloud platform, follow the getting-started guides in the docs. To self-host, run the backend using Docker (recommended) or a prebuilt binary following the self-hosting guide.
What do I need to self-host Convex?You need Docker or a prebuilt binary to run the backend, and it integrates with external storage providers like Neon, Fly.io, Vercel, Netlify, RDS, Sqlite, or Postgres.
Is self-hosted Convex equally solid on every OS?It's battle-tested most thoroughly on Linux and Mac; Windows support is less mature, and if you build from source rather than using the published binaries, you must manually change the default instance secret and admin key.
Does the self-hosted backend phone home?Yes, self-hosted builds send an anonymous beacon with a random deployment ID, database migration version, git revision, and uptime; you can turn it off with the --disable-beacon flag.
What's the easiest way to try Convex without self-hosting?Use Convex's cloud platform, which has a generous free tier so small apps and side projects can run at zero cost and maintenance.
What is Convex written in under the hood?The backend itself (crates/) is written in Rust, while the public and internal npm packages, including the CLI and client libraries, are TypeScript.
Creator
convex
Size
187.3 MB
Stars
12.7K
Age
2y
Commits · 90 Days