Loco is "Rust on Rails".
Loco is strongly inspired by Rails. If you know Rails and Rust, you'll feel at home. If you only know Rails and new to Rust, you'll find Loco refreshing. We do not assume you know Rails.
$ cargo install loco-cli
Now you can create your new app (choose "SaaS app").
$ loco new
β― App name? [myapp]:
β― SaaS app (with DB and user auth)
Stateless service (minimal, no db)
π Loco app generated successfully in:
myapp
To configure a database , please run a local postgres database with loco:loco
and a db named [insert app]_development
.
$ docker run -d -p 5432:5432 -e POSTGRES_USER=loco -e POSTGRES_DB=myapp_development -e POSTGRES_PASSWORD="loco" postgres:15.3-alpine
Now cd
into your myapp
and start your app:
$ cd myapp
$ cargo loco start
Finished dev [unoptimized + debuginfo] target(s) in 21.63s
Running `target/debug/myapp start`
:
:
:
controller/app_routes.rs:203: [Middleware] Adding log trace id
β β
β β
β β β β ββ
β βββ
β β β βββββ
βββ
βββββββ βββββββββ βββββββββββ βββββββββ βββ
ββββββ βββββ βββ βββββ βββ βββββ βββ ββ
ββββββ βββββ βββ βββββ βββ βββββ βββ βββ
ββββββ βββββ βββ βββββ βββββ βββ βββββ
ββββββ βββββ βββ βββββ βββ βββββ βββ βββββ
ββββββ βββββ βββ ββββ βββ βββββ βββ βββββ
ββββββ ββββββββββ ββββββββββ ββββββββββ βββ
βββββββββββββββββββββββββββββββββββββββ
started on port 3000
Loco is feature complete, but features are still being added rapidly.
- Stateless APIs
- Complete SaaS products with user authentication
- Purpose-built services such as ML inference endpoints
- Full stack projects with separate frontend project integrated with Loco
- Hobby projects full-stack with backend and HTML frontend
- View issues for what we plan next and what we work on (you're welcome to submit PRs!)
- View CHANGELOG for what we already added
- SpectralOps - various services powered by Loco framework
open an issue to add yourself here
Thanks goes to these wonderful people: