Overview
Loco is a Rust web framework strongly inspired by Ruby on Rails. It emphasises convention over configuration and rapid development: loco new generates an app (for example a SaaS starter with client-side rendering), and generators create models, controllers, jobs and more that are already wired together.
Controllers are built on Axum, with plain async functions, extractors and an app context that hands you the database, configuration and workers. Models use SeaORM with relationships and validation. Background jobs run on a Redis-backed queue or in-process threads, the scheduler replaces crontabs, mailers send through the worker system, storage can be in memory, on disk or in AWS S3, GCP or Azure, and a cache layer is included.
The project describes itself as unapologetically optimised for the solo developer, while allowing you to use only parts of it and split services later. It encourages testing models, controllers and jobs with little setup.
Loco started in November 2023, is Apache-2.0 licensed and has reached a 1.x release that targets SeaORM 2.0 and the Rust 2024 edition.
Pricing and plans
What it does
- Generators and CLI
- Scaffold apps, models, controllers and jobs from the command line.
- SeaORM models
- Entities with relationships, validation and migrations.
- Axum controllers
- Async handlers with extractors and an app context.
- Background jobs and scheduler
- Redis-backed or in-process workers plus a scheduler.
- Mailers and storage
- Background email delivery; storage on disk or S3, GCP and Azure.
- Testing helpers
- Test models, controllers and jobs with minimal setup.
Strengths and limitations
Strengths
- Rails-style productivity in Rust
- Many pieces (jobs, mail, storage, cache) included
- Built on widely used Axum and SeaORM
- Aimed squarely at solo developers and small teams
Limitations
- Much younger and smaller than Rails or Laravel, with fewer guides and integrations
- Tied to SeaORM for its model layer
- Requires Rust knowledge, a steeper start than Rails in Ruby for most developers
- Built on Axum, so Axum's pre-1.0 changes can flow through
Who it suits
Good for
- Solo developers who want Rust with conventions
- SaaS side projects and startups in Rust
- Rails developers exploring Rust
Look elsewhere if
- Teams needing a large, long-established ecosystem
- Microservices that need only a router (see Axum)
Alternatives to Loco
| Tool | From | Free option | Stages |
|---|---|---|---|
| Hono Web-standards TypeScript web framework | — | ||
| Encore Backend framework with infrastructure from code | $49/mo | Free tier | |
| Fastify High-performance Node.js web framework | — | ||
| AdonisJS Batteries-included TypeScript MVC framework | — | ||
| Elysia Bun-first TypeScript web framework | — | ||
| Django Batteries-included Python web framework | — |
Questions
Is Loco Rails for Rust?
It is strongly inspired by Rails and adapts its concepts to Rust.
What does Loco use under the hood?
Axum for HTTP and SeaORM for the database layer.
Is Loco free?
Yes, it is Apache-2.0 licensed.
Does Loco support background jobs?
Yes, with a Redis-backed queue or in-process workers.
Sources read for this page