Rust + Axum + Leptos + SeaORM Starter
Leptos, Axum, SQLite, SeaORM, Tracing, and anyhow + thiserror form a rust fullstack configuration where Rust owns both the browser frontend and backend. Better Fullstack can scaffold this exact compatibility-checked selection.
01 / selection
Stack at a glance
| Role | Technology | Repository description | Scope |
|---|---|---|---|
| Frontend | Leptos | Fine-grained reactive framework with SSR support | Primary frontend |
| Backend | Axum | Ergonomic and modular web framework by Tokio team | Primary backend |
| Database | SQLite | File-based SQL database | Project-wide |
| ORM | SeaORM | Async & dynamic ORM with ActiveRecord pattern | Scoped to the backend |
| Logging | Tracing | Structured, composable instrumentation framework from the Tokio project | Scoped to the backend |
| Error handling | anyhow + thiserror | anyhow for application errors with thiserror for custom error types — the standard Rust combo | Scoped to the backend |
02 / architecture
How the pieces fit
- The generated stack has Rust frontend and backend primary parts.
- SeaORM is scoped to the backend.
- Tracing is scoped to the backend.
- anyhow + thiserror is scoped to the backend.
03 / output
What gets generated
The virtual generator produced 16 files across 6 directories. The output is a single-directory project.
Top-level entries
- ./.env.example
- ./.gitignore
- ./AGENTS.md
- ./CLAUDE.md
- ./Cargo.toml
- ./README.md
- ./crates
- ./rust-toolchain.toml
Representative files
- README.md
- Cargo.toml
- crates/client/Cargo.toml
- crates/server/Cargo.toml
- crates/client/src/lib.rs
- crates/server/src/database.rs
- crates/server/src/error.rs
- crates/server/src/main.rs
04 / create
Create command
This is the canonical Bun command generated for the selection.
bun create better-fullstack@latest my-app --ecosystem rust --database sqlite --rust-web-framework axum --rust-frontend leptos --rust-orm sea-orm --rust-api none --rust-cli none --rust-libraries none --rust-logging tracing --rust-error-handling anyhow-thiserror --rust-caching none --rust-auth none --rust-realtime none --rust-message-queue none --rust-observability none --rust-templating none --email none --observability none --caching none --search none --ai-docs claude-md agents-md05 / builder
Open in the builder
- eco
- rust
- au
- none
- rfe
- leptos
06 / checks
Compatibility notes
Compatibility checked against Better Fullstack types version 2.3.0.
The generated record has 0 graph issues and 0 disabled selected options. This is a compatibility check, not a claim that this exact scaffold received a runtime smoke verification.
07 / fit
When to choose this shape
Choose this shape when both the browser frontend and server should be represented by Rust stack parts.
08 / next
Related stacks and guide
Need a walkthrough? Read the related stack guide.
09 / faq
Questions
Is this combination supported?
It passes the repository's compatibility analysis, selected-option checks, stack graph validation, project schema parsing, and virtual generation. That result is described here as compatibility checked.
Does it generate one app or separate parts?
Rust owns both the browser frontend and backend. The actual generated output uses a single-directory layout.
How can I customize the selection?
Open the generated builder link above. Its query parameters reproduce this selection, and the builder can change compatible options before generating a new command.