Maat Framework

Maat icon

Maat is a full-stack backend framework for Dart with routing, middleware, validation, authentication, console commands, bounded and streaming request bodies, multi-isolate workers, and graceful shutdown.

import 'package:maat/maat.dart';

Route.get('/health', (Request request) => {'status': 'ok'});
await app.serve();

Create a project with Ptah:

dart pub global activate ptah
maat new blog

Packages

Every package is published on pub.dev and usable on its own.

Framework

Package
maat The HTTP framework: routing, middleware, validation, workers, graceful shutdown.
ptah Installer. maat new blog scaffolds a project.

Database

Package
seshat The ORM: query builder, typed models, relationships, migrations.
seshat_maat Wires Seshat into a Maat application.
seshat_mysql MySQL adapter for Seshat.

Views

Package
khnum HTML templates with layouts, includes, components, and safe escaping.
khnum_maat Wires Khnum into a Maat application, with Tailwind commands.

Authentication

Package
cartouche Personal access tokens for API authentication.
anubis Database web sessions, CSRF protection, and web authentication.

Messaging

Package
amarna Mailables and SMTP delivery.
sistrum Multi-channel notifications: mail and database.
thoth_realtime Self-hosted Pusher-protocol WebSocket server.

Clients and tooling

Package
horus_client Typed HTTP and realtime client runtime for Dart and Flutter.
djed_dev Local environment: *.test domains, trusted HTTPS, on-demand app processes.

See the Maat documentation for the complete guide.

Libraries

maat
Maat: a full-stack backend framework for Dart.
testing
In-process HTTP testing helpers.