dbos-inc / dbos-transact-ts

The TypeScript framework for backends that scale
https://docs.dbos.dev
MIT License
366 stars 27 forks source link
dbos postgresql typescript

DBOS Transact

DBOS Transact is a modern TypeScript framework for backend applications.

You want to build your next application with DBOS Transact because you need:

Getting Started

The fastest way to get started is by following the quickstart, where you'll learn how to get a DBOS Transact application running in less than five minutes.

Documentation

Check out the full documentation at https://docs.dbos.dev/.

Main Features

Here are some of the core features of DBOS Transact:

Feature Description
Transactions Easily and safely query your application database using Drizzle, Knex, TypeORM, Prisma, or raw SQL.
Workflows Reliable workflow orchestration—resume your program after any failure.
HTTP Serving Set up endpoints to serve requests from your application.
Idempotency Automatically make any request idempotent, so your requests happen exactly once.
Authentication and Authorization Secure your HTTP endpoints so only authorized users can access them.
Kafka Integration Consume Kafka messages exactly-once with transactions or workflows.
Scheduled Workflows Schedule your workflows to run exactly-once per time interval with cron-like syntax.
Testing and Debugging Easily write unit tests for your applications, compatible with Jest and other popular testing frameworks.
Self-Hosting Host your applications anywhere, as long as they have a Postgres database to connect to.

And DBOS Cloud:

Feature Description
Serverless App Deployment Deploy apps to DBOS Cloud in minutes.
Interactive Time Travel Query your application database as of any past point in time.
Time Travel Debugging Replay any DBOS Cloud trace locally on your computer.
Cloud Database Management Provision cloud Postgres instances for your applications. Alternatively, bring your own database.
Built-in Observability Built-in log capture, request tracing, and dashboards.

Community

If you're interested in building with us, please star our repository and join our community on Discord! If you see a bug or have a feature request, don't hesitate to open an issue here on GitHub. If you're interested in contributing, check out our contributions guide.