MCP ExplorerExplorer

Convex Backend

@get-convexon 17 days ago
5013 NOASSERTION
FreeCommunity
AI Systems
#backend#convex#database#typescript#rust
The open-source reactive database for app developers

Overview

What is Convex Backend

Convex-backend is an open-source reactive database designed for web app developers, enabling them to fetch data and perform business logic with strong consistency using pure TypeScript.

Use cases

Use cases for convex-backend include small applications, side projects, and any web app that benefits from live data updates and minimal maintenance, especially when using the cloud platform.

How to use

To use convex-backend, developers can start by visiting the documentation for getting started guides. The easiest way to build with Convex is through their cloud platform, which offers a generous free tier, allowing developers to focus on application development without infrastructure concerns.

Key features

Key features of convex-backend include a reactive database, server function writing capabilities, client libraries, and the ability to build and scale dynamic live-updating applications.

Where to use

Convex-backend can be used in various fields such as web application development, particularly for projects that require real-time data updates and strong consistency.

Content

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 bug fixes and
love receiving feedback. We keep this repository
synced with any internal development work within a handful of days.

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

  • If you choose to self-host, we recommend following the self-hosting guide. If
    you are instead building from source, make sure to change your instance secret
    and admin key from the defaults in the repo.
  • Convex is battle tested most thoroughly on Linux and Mac. On Windows, it has
    less experience. If you run into issues, please message us on
    Discord in the #self-hosted channel.
  • Convex self-hosted builds contain a beacon to help Convex improve the product.
    The information is minimal and anonymous and helpful to Convex, but if you
    really want to disable it, you can set the --disable-beacon flag on the
    backend binary. The beacon’s messages print in the log and only include
    • A random identifier for your deployment (not used elsewhere)
    • Migration version of your database
    • Git rev of the backend
    • Uptime of the backend

Repository layout

  • crates/ contains Rust code

    • Main binary
      • local_backend/ is an application server on top of the Runtime. This is
        the serving edge for the Convex cloud.
  • npm-packages/ contains both our public and internal TypeScript packages.

    • Internal packages
      • udf-runtime/ sets up the user-defined functions JS environment for
        queries and mutations
      • udf-tests/ is a collection of functions used in testing the isolate
        layer
      • system-udfs/ contains functions used by the Convex system e.g. the CLI

Tools

No tools

Comments