Duxt
The meta-framework for Jaspr — Build full-stack Dart web apps with module-based architecture, file-based routing, and powerful scaffolding.
Features
- Module-Based Architecture — Organize code by feature with pages, components, models & APIs
- File-Based Routing — Pages and markdown files auto-generate routes
- 3 Rendering Modes — Static (SSG), Server (SSR), or Client (SPA)
- Namespace Support — Nest modules under namespaces like
Admin/Post - Built-in Tailwind CSS — Automatic compilation, no extra dependencies
- Desktop Apps — Native desktop via Tauri with
duxt build desktop - Scaffold Generator — Full CRUD from a single command
- Markdown Content — Docs and blog content with frontmatter
- Security Middleware — CORS, rate limiting, CSRF, security headers
- Multi-Target Builds — Cross-compile for Linux, macOS, Windows
- Performance Tracing —
--perfflag for rebuild stage timings
Quick Start
dart pub global activate duxt
duxt create my-app
cd my-app && dart pub get
duxt dev
Your app runs at http://localhost:4000. Choose from static, server, or client templates when creating.
Project Structure
my-app/
├── lib/
│ ├── blog/ # Feature module
│ │ ├── pages/
│ │ │ ├── index.dart # -> /blog
│ │ │ └── _id_.dart # -> /blog/:id
│ │ ├── content/
│ │ │ └── intro.md # -> /blog/intro
│ │ ├── components/
│ │ └── model.dart
│ ├── admin/posts/pages/ # -> /admin/posts (namespace)
│ ├── theme/home/pages/ # -> / (theme strips prefix)
│ └── shared/layouts/
├── server/ # Backend (server template)
├── web/styles.tw.css # Tailwind input
└── duxt.config.dart
CLI
duxt create my-app # Create project
duxt dev # Dev server + hot reload
duxt dev --perf --verbose # With performance tracing
duxt build # Production build
duxt build desktop # Desktop app (Tauri)
duxt start --open # Run production server
duxt g module posts # Generate module
duxt g module Admin/Post # Namespaced module
duxt scaffold posts title:String # Full CRUD generation
duxt d module posts # Delete module
duxt info # Project summary
duxt doctor # Environment check
See all commands and options at duxt.dev/duxt-cli.
Ecosystem
| Package | Description |
|---|---|
| duxt | CLI & runtime framework |
| duxt_html | Flutter-style HTML components for Jaspr (80+ typed components) |
| duxt_ui | Beautiful, accessible UI components (50+) |
| duxt_orm | ActiveRecord-style ORM — PostgreSQL, MySQL & SQLite |
| duxt_signals | Reactive signals for lightweight state management |
| duxt_icons | 200,000+ icons from Iconify — inline SVG for SSR |
| duxt_mcp | MCP server for AI tools (Claude Code, Cursor) |
Requirements
- Dart SDK ^3.0.0
- Jaspr ^0.22.2
- Tailwind CSS v4+ (auto-detected)
Documentation
Full guides, API reference, and tutorials at duxt.dev
Contributing
Contributions welcome! See CONTRIBUTING.md.
License
MIT — see LICENSE.
Built by the duxt.dev team