Workspace for the Routed framework, testing utilities, CLI, Hotwire helpers, server testing adapters, and runnable examples. The repo uses a Dart monorepo layout so packages share tooling, CI, and release notes.
The complete package list, current versions, and package roles are maintained in the Routed package catalog.
- packages/routed – modular HTTP engine with providers, logging, localization, signals, and lifecycle hooks.
- packages/routed_cli – project scaffolding, configuration docs, provider management, and dev tooling.
- packages/routed_hotwire – Turbo/Stimulus helpers for realtime experiences atop Routed.
- packages/server_testing/routed_testing –
Routed transport adapter for
server_testing.
For a standard application, import the public routed facade and initialize
the engine asynchronously. The facade registers the official provider
catalogue before Engine.create() boots it:
import 'package:routed/routed.dart';
Future<void> main() async {
final engine = await Engine.create();
engine.get('/health', (ctx) => ctx.json({'ok': true}));
await engine.serve(port: 8080);
}When composing a slim application, use routed_core and add each feature
provider explicitly, for example RoutedSessionsProvider together with
sessionMiddleware from routed_sessions. Feature packages document their
provider and middleware setup individually.
Testing utilities that were extracted into their own repositories (published under the RoutedDart organization):
property_testing– generator + shrinking library that powers fuzz/property coverage.server_testing– HTTP & browser testing harness with CLI-managed drivers, plus theserver_testing_shelfShelf adapter.
Each example lives under examples/ so you can run it locally:
- examples/config_demo – configuration + CLI walkthrough.
- examples/kitchen_sink – broad feature sampler.
- examples/openapi_demo – OpenAPI manifest generation example.
- examples/localization – translation provider demo.
- examples/multipart – upload + binding helpers.
- examples/liquid_template – template rendering.
- examples/http2 – TLS + HTTP/2 bootstrap.
- examples/oauth_keycloak – OAuth/Keycloak flow.
- examples/cloudflare_auth – D1-backed Cloudflare Worker auth with encrypted sessions and a protected route.
- examples/forward_proxy, examples/fallback, examples/route_events, examples/project_commands_demo, and other folders cover additional routing/CLI scenarios.
dart pub get # fetch workspace dependencies
melos bootstrap # (if you prefer melos commands)
dart format . # keep formatting consistent
dart test ./... # run package testsPublishing instructions live in docs/publishing-checklist.md. Each package has
its own changelog and versioned tags (e.g. routed_cli-0.2.2).
Agent workflows for each routed subsystem live in skills/INDEX.md.
They point to the package's public barrels, README, focused tests, and boundary
rules; refresh them with just routed-skills and verify them with
just routed-skills-check.
Keep the ecosystem healthy by buying me a coffee.