The modern, multi-threaded Dart server framework that helps you focus on building.
Conduit is a powerful open-source web framework with everything
you need to create production-ready applications.
(Migrating from Aqueduct? Click here)
One framework, all the tools you need.
Fluid routing
An easy-to-use functional routing approach makes reading and composing your application fluid and powerful.
router
.route("/users/[:id]")
.link(() => RateLimiter())
.link(() => UserController());
Statically-typed ORM with database migrations
A helpful, feature-rich ORM makes it simple to map and query your data with code completion and refactoring. And with a tested CLI and tooling, stop worrying about your migrations.
final q = Query<Child>(context)
..where((p) => p.parent.age).greaterThan(30)
..join(object: (p) => e.parent);
final childrenWithParentsOver30 = await q.fetch();
Built-in OAuth 2.0 server and security model
Powerful and configurable, a built-in OAuth 2.0 system makes security and access a breeze, while giving apps the freedom to store tokens and identifiers wherever they choose.
final delegate = ManagedAuthDelegate<User>(context);
authServer = AuthServer(delegate);
router.route("/profile")
.link(() => Authorizer.bearer(
authServer, scopes: ["profile.readonly"]))
.link(() => ProfileController(context));
Integrated testing library
An expressive test syntax with full integration allows for functional tests that don't rely on mocks. Full access to the framework allows testing database updates and more.
test("GET /foo returns 200 and data", () async {
final result = await agent.get("/foo");
expect(result, hasResponse(200, partial({
"status": "pending",
"version": greaterThan(1)
})));
});
Works with your favorite technology
Conduit is built on the world class Dart
platform, which powers some of the world’s most trusted apps and
frameworks, such as Google Ads and Flutter. Dart’s maturity and active
developer community means Conduit works with all of the most popular
technology and services.
And with prebuilt Docker images and built-in support for PostgreSQL
databases, Conduit is ready for your tech stack.
Reliable, fast, and tested
Conduit is relied upon to power advanced applications in production for several companies, including TaxiTecnic. Built-in concurrency means it’s blazing fast, and memory-isolated threads eliminate complicated synchronization and race condition worries. Conduit is supported by over 1400 automated tests, guaranteeing the stability of each release. And features like sound null safety allow for confidence when writing an application.