Gize logo
Beta lançada · RC em andamento · Rust edition 2024

Velocidade batteries-included,
do jeito Rust.

O Gize é um framework backend para Rust com foco em produtividade. Scaffolding, convenções, geradores, migrations multi-banco, um admin e WebSockets opcionais, sem mágica e com código gerado que é totalmente seu.

O nome vem do planalto das Grandes Pirâmides: fundações sólidas, feitas para durar.

seu-terminal · gize
$ cargo install gize # from crates.io
$ gize new shop # Axum + SQLx + Postgres
$ cd shop
$ gize make crud Product name:String price:i32 active:bool
✓ model · dto · repository · service
✓ handler · routes · tests
$ gize migrate
$ gize serve # http://localhost:8080
→ listening on 0.0.0.0:8080

O problema

Rust é rápido. Começar um backend em Rust é lento.

Rust é excelente para serviços de backend: rápido, seguro e previsível. Mas subir um backend de verdade é lento: você paga um alto “imposto do dia zero” antes de escrever uma única linha de lógica de negócio.

Sem layout consagrado

Cada time reinventa a própria estrutura de projeto do zero.

Ligação manual

Router, pool de banco, migrations, config, auth e tratamento de erros, tudo na mão.

Recursos escritos à mão

Model → migration → repository → service → DTO → handler → rotas → testes, inteiramente manual.

Sem convenções

Nenhum admin de primeira classe, nenhum scaffolding, nenhuma convenção compartilhada.

O resultado: times evitam Rust em produtos cheios de CRUD, ou queimam dias em boilerplate. O Gize mira exatamente nessa dor: produtividade inicial.

Como funciona

Do zero a uma API rodando em minutos

Poucos comandos produzem uma API que compila, roda e tem forma de produção, com um recurso CRUD completo, em Rust idiomático que você lê e possui.

  1. 01gize new shop

    Crie o projeto

    Um projeto Cargo com o layout padrão, config, pool de banco, router, state e tratamento de erros. Compila e sobe uma app vazia.

  2. 02gize make crud Product

    Gere um recurso

    Repository, service, DTO, handlers, rotas, validação e testes, conectados ao router automaticamente.

  3. 03gize migrate

    Aplique as migrations

    Gere e aplique migrations SQL para os seus models no PostgreSQL, SQLite ou MySQL.

  4. 04gize serve

    Rode

    Suba a app gerada e comece a chamar seus endpoints GET/POST/PUT/DELETE.

Exemplos

Apps reais, feitos com o Gize

Projetos completos que você clona, lê e roda: código gerado que é seu, estendido onde importa.

Diferenciais

Baterias inclusas, nunca uma caixa-preta

Codegen transparente

Tudo que o Gize gera é Rust normal, que você lê, faz diff e edita. Sem reflection em runtime, sem labirinto de macros do qual você não escapa.

Baterias destacáveis

Admin, auth e OpenAPI são crates opcionais, não um monolito que você precisa engolir inteiro.

Guiado pelo manifesto, não preso a ele

O gize.toml descreve a app e alimenta o gize sync, mas suas edições manuais são sempre respeitadas.

Ergonomia nativa do Rust

Validação de DTO, erros tipados e design async-first mapeiam como apps Axum idiomáticas já são escritas.

Princípios de design

Inegociáveis

  • Abstrações de custo zero.
  • O código gerado é idiomático e legível, e o desenvolvedor continua dono.
  • Sem dependências desnecessárias; cada uma justificada em um ADR.
  • Convenção sobre configuração, mas a customização é sempre possível.
  • Arquitetura previsível, código explícito, performance como prioridade.
  • Feito para projetos reais, não apenas demos.

A stack

Apoiado nas melhores crates

O Gize não reinventa o runtime. Ele orquestra crates comprovadas por trás de convenções claras.

AxumADR-002

Framework HTTP

SQLxADR-003 / ADR-015

Acesso a dados · PostgreSQL, SQLite, MySQL

Tokio

Runtime async

clapADR-012

CLI

askama / minijinjaADR-004

Templating para codegen

Cargo WorkspaceADR-001

Arquitetura de 10 crates

Panorama

Como o Gize se compara

Pegamos emprestada a experiência (convenções, scaffolding, produtividade), não a mágica.

FerramentaPonto forteOnde o Gize difere
Axum puro (Rust)Framework HTTP minimalista e sem opinião.Usa Axum por baixo e adiciona layout, banco, migrations e scaffolding. Você ainda recebe código Axum puro.
Actix Web (Rust)Muito rápido, maduro, influenciado por atores.Começa no Axum, por um ecossistema mais suave; a camada de framework é abstraída, então um alvo Actix segue como opção futura.
Loco (Rust)O “Rails para Rust” mais próximo, baseado em SeaORM.Aposta na transparência do código gerado em vez de um runtime pesado, e em SQLx antes de SeaORM.
Rails (Ruby)O padrão-ouro de geradores/convenções.O mesmo DNA de geradores, compilado e com tipos. Ciclo editar→rodar mais lento em troca de performance e segurança.
Laravel (PHP)Geradores artisan, ótima DX.gize make ... é o nosso artisan, produzindo repositories explícitos em Rust e queries tipadas em vez de PHP.

Escopo

O que o Gize não é

Não é um clone de framework

Pegamos emprestada a experiência (convenções, geradores, scaffolding), não o modelo de runtime nem a mágica.

Não é uma caixa-preta

O código gerado vive no seu repositório e é totalmente editável. Nenhum runtime oculto reescrevendo seus handlers.

Não é um ORM ou framework próprio

O Gize orquestra as melhores crates (Axum, SQLx, Tokio) por trás de convenções claras.

O teste definitivo: apague o Gize do seu projeto e ainda tenha um código Rust idiomático e funcional. O Gize é um acelerador de produtividade, não uma gaiola.

Roadmap

MVP → v1.0 em 18 meses

As fases têm portões: cada uma começa só quando a anterior cumpre seus critérios de aceite.

Fase 1
MVP
Meses 0–4
Fase 2
Alpha
Meses 4–8
Fase 3
Beta
Meses 8–12
Fase 4
RC
Meses 12–15
Fase 5
v1.0
Meses 15–18
Fase 6
v2.0
Além de 18 meses
Ver o roadmap completo

Construa seu backend Rust na velocidade de um framework.

O Gize está em desenvolvimento inicial. Acompanhe a visão, a definição do MVP e o roadmap.