Transparent codegen
Everything Gize generates is normal Rust you can read, diff and edit. No runtime reflection, no proc-macro maze you can't escape.
From your first model to a complete API. Gize generates the structure, routes and migrations so you can focus on what makes your application yours.
cargo install gize --locked$ gize new shop --database sqlite
$ cd shop
$ gize make crud Product name:String
01 — How it works
A resource is more than a model. Generate every layer together, with an explicit place for your business logic.
Explore the architecturegize new shopA Cargo project with the standard layout, config, DB pool, router, state and error handling. Compiles and serves an empty app.
gize make crud Product name:StringRepository, service, DTO, handlers, routes, validation and tests, wired into the router automatically.
gize migrateGenerate and apply SQL migrations for your models against PostgreSQL, SQLite or MySQL.
gize serveBoot the generated app and start hitting your GET/POST/PUT/DELETE endpoints.
├── Cargo.toml
├── gize.toml manifest
├── migrations/
└── src/app/products/
↳model.rsRust
↳dto.rsRust
↳repository.rsRust
↳service.rsRust
↳handler.rsRust
↳routes.rsRust
↳error.rsRust
↳tests.rsRust
A conventional Cargo project. Read it, change it, make it yours.
02 — Differentiators
The convenience of generators. The control of code in your own repository.
Everything Gize generates is normal Rust you can read, diff and edit. No runtime reflection, no proc-macro maze you can't escape.
Admin, auth and OpenAPI are opt-in crates, not a monolith you must swallow whole.
gize.toml describes the app and powers gize sync, but your hand edits are always respected.
DTO validation, typed errors and async-first design map to how idiomatic Axum apps are already written.
03 — BUILT WITH GIZE
Complete projects you can clone, read and run: generated code you own, extended where it counts.
A real-time group chat: WebSockets, SQLite persistence, JWT auth and a React admin. The generated echo endpoint is hand-extended into a live broadcast.
View on GitHubA full-stack blog API with users → posts → comments: relationships, validation, JWT auth and an auto-generated OpenAPI spec at /docs, plus a React admin.
View on GitHubA REST API with users and products CRUD on PostgreSQL, built on Axum + SQLx, scaffolded in about five minutes with gize new and gize make crud.
View on GitHubA ticketing API with related venues, shows, orders and tickets. Generated with Gize 0.9.5, it includes PostgreSQL, JWT, OpenAPI, a React admin and a schema evolution example with backfill.
View on GitHubA social network API built with Gize 0.9.10: profiles, posts, comments, likes and follows. The generated code is extended with ownership checks, private messages and rules preventing duplicates.
View on GitHub04 — Landscape
We borrow the experience (conventions, scaffolding, productivity), not the magic.
| Tool | Strength | Where Gize differs |
|---|---|---|
| Plain Axum (Rust) | Minimal, unopinionated HTTP framework. | Uses Axum underneath, then adds layout, DB, migrations and scaffolding. You still get plain Axum code. |
| Actix Web (Rust) | Very fast, mature, actor-influenced. | Starts on Axum for a gentler ecosystem; the framework layer is abstracted so an Actix target stays a future option. |
| Loco (Rust) | The closest “Rails for Rust”, SeaORM-based. | Bets on generated-code transparency over a heavy runtime, and SQLx-first over SeaORM. |
| Rails (Ruby) | The generator/convention gold standard. | Same generator DNA, compiled and type-safe. Slower edit→run in exchange for performance and safety. |
| Laravel (PHP) | Artisan generators, great DX. | gize make ... is our artisan, producing explicit Rust repositories and typed queries instead of PHP. |
On the road to 1.0
The feature set is frozen. The focus now is stability, real-world validation and a dependable developer experience.
See the full roadmapGIZE / BUILD WITH CONFIDENCE
Start with a solid foundation. Take the code wherever you want.
Get startedStar on GitHub