inspired by Django
Axum · SeaORM · Tera · Native CSRF · Built-in Admin
#[form(schema = user_schema, model = users::Entity)]
pub struct UserForm;
// Typed search via form
search!(@UserForm => Username = "alice")
.all(&db).await?;
// Direct access via objects
UserForm::objects.filter(...).first(&db).await?;
urlpatterns![
path("/", views::index, "index"),
path("/users", views::list, "user_list"),
path("/users/:id", views::detail, "user_detail"),
]
// Handler — DB accessible via request.engine.db
pub async fn detail(
Path(id): Path<i32>,
mut request: Request,
) -> AppResult<Response> { ... }
builder::new(config)
.with_admin(|a| {
a.site_title("Administration")
.auth(RuniqueAdminAuth::new())
.page_size(15)
})
.build().await?
.run().await?
// Auto-generated CRUD from your SeaORM models
.middleware(|m| {
m.with_csp(|c| c.policy(SecurityPolicy::strict()))
.with_allowed_hosts(|h| h.host("mysite.com"))
.with_session_memory_limit(5 * 1024 * 1024, ...)
})
// CSRF enabled by default — cannot be disabled
// Rate limiting, LoginGuard, Host validation built-in
Everything you need
A complete framework, without compromising on security.
Django-like ORM
search!, objects, auto-generated migrations from your Rust models
Native Security
CSRF, CSP, rate limiting, host validation — built-in, not optional
Generated Admin
Auto-generated CRUD interface from your models, customizable
Typed Forms
Static declaration, automatic validation, file uploads
Tera Templates
Custom filters, tags, i18n, flash messages, macros
Axum / Tokio
Rust performance, native async, zero runtime overhead
Explore the demo
Each section is an interactive page of the demo-app.
Framework
Router
urlpatterns!, path parameters, named links
Templates & Tags
{% static %}, {% link %}, {% media %}, {% include "message" %}, {{ xxx | form | safe }}
Middlewares
CSRF, CSP, Rate Limiter, Login Guard, Host Validation, HTTPS
Flash Messages
Success, info, warning, error
Internationalization
Runique template language — 9 languages available
Sessions
MemoryStore, memory limits, automatic periodic cleanup
Macros
context_update!, context!, impl_from_error!
Error Pages
404, 500, 429 — Runique page verification