Ferreiro
A Django-inspired web framework for Rust, built on hexagonal architecture. For developers who want to build, not configure.
⚠️ Alpha Release: Ferreiro is in early development (v0.0.x). The core architecture is solid, but many features are still being implemented.
What Works Now
- ✅ Domain modeling with value objects and events
- ✅ In-memory repositories for testing
- ✅ HTTP server (Axum-based)
- ✅ Template engines (Tera, MiniJinja)
- ✅ Session management
Quick Start
use *;
use Arc;
async
Architecture
Ferreiro follows hexagonal (ports and adapters) architecture:
- Domain: Pure business logic with zero framework dependencies
- Ports: Trait interfaces for repositories and services
- Adapters: Implementations for HTTP, databases, templates, etc.
This keeps your domain clean and makes everything swappable and testable.
Modules
- [
domain]: Domain models, value objects, and ports - [
application]: Service implementations and use cases - [
db]: Database adapters (currently in-memory, PostgreSQL/SQLite coming) - [
http]: HTTP server and routing - [
templates]: Template engines (Tera, MiniJinja) - [
session]: Session management - [
admin]: Admin interface (coming soon) - [
prelude]: Convenient imports for common use cases