O Gaver Framework foi criado para encontrar um meio termo ideal entre desenvolvimento humano e IA:
-
Backend Go: Desenvolvido principalmente pelo desenvolvedor
- Estrutura modular
- CLI para geração de código
- Sistema de modules, CRUD automático, migrations
- Annotations para controle de campos
-
Frontend: Apenas composables de conexão com API feitos pelo dev
- Estrutura pré-configurada com Quasar Framework
- Cliente API base configurado
- Composables prontos para uso
-
IA faz o resto: Componentes, páginas, layouts e toda a interface
- Estrutura organizada para facilitar trabalho de IA
- Recomendado usar Cursor ou outra IDE com IA integrada
- A IA trabalha em
frontend/src/components/efrontend/src/pages/
Fluxo de Trabalho:
- Dev cria backend Go com
gaver moduleegaver crud - Dev cria composables de API em
frontend/src/api/ - IA desenvolve componentes e páginas usando os composables
- Resultado: Aplicação completa com backend robusto e frontend moderno
# Instalar
go install github.com/Dalistor/gaver/cmd/gaver@latest
# Criar projeto Web
gaver init meu-app -d sqlite -t web
cd meu-app
gaver serve
# Criar projeto Desktop (Windows)
gaver init meu-app -d sqlite -t desktop
cd meu-app
gaver serve
gaver build # Gera .exe com servidor Go embutido- 🎯 CLI completo com geração de código
- 📦 Sistema modular para organização
- 🏷️ Annotations
gaverModelpara controle de campos e validações - 🔄 CRUD automático com callbacks Before/After
- 📊 Migrations inteligentes (makemigrations/migrate)
- 🗄️ Suporte a MySQL, PostgreSQL, SQLite via GORM
- 🌐 Framework HTTP com Gin
- ⏰ Sistema de rotinas agendadas
- 🎨 Quasar Framework pré-configurado
- 🔌 Composables de API prontos para uso
- 📁 Estrutura organizada para facilitar trabalho de IA
- 🖥️ Multi-plataforma: Web e Desktop Windows
- 📦 Build automatizado: Gera executáveis prontos para distribuição
Para documentação completa, veja DOCUMENTATION.md
| Plataforma | Status | Descrição |
|---|---|---|
| Web | ✅ Completo | SPA com Quasar Framework |
| Desktop Windows | ✅ Completo | Electron com servidor Go embutido |
| Android | Capacitor com servidor Go nativo |
go install github.com/Dalistor/gaver/cmd/gaver@latestOu clone e compile:
git clone https://github.com/Dalistor/gaver.git
cd gaver
go build -o gaver ./cmd/gavergaver init <nome-do-projeto> [flags]
Flags:
-d, --database string Tipo de banco de dados (padrão: "mysql")
Opções: mysql, postgres, sqlite
-t, --type string Tipo de projeto (padrão: "server")
Opções: server, web, desktop
Exemplos:
# Projeto server com MySQL
gaver init meu-api -d mysql -t server
# Projeto web com SQLite
gaver init meu-app -d sqlite -t web
# Projeto desktop com PostgreSQL
gaver init meu-app -d postgres -t desktopgaver serve [flags]
Flags:
--android Abre Android Studio (apenas projetos Android)
--cgo Habilita CGO para SQLite (requer compilador C)
# Inicia servidor Go + frontend (se aplicável)
gaver servegaver build
# O comportamento varia conforme o tipo de projeto:
# - Server: Gera binário Go em bin/
# - Web: Gera pasta build/ com binário Go + SPA compilada
# - Desktop: Gera instalador .exe em frontend/dist/electron/
# - Android: Gera APK em frontend/android/app/build/outputs/apk/gaver module create <nome>
gaver module model <mod> <Model>
gaver module crud <mod> <Model> [flags]
--only=list,get # Apenas métodos especificados
--except=delete # Excluir métodosgaver makemigrations [-n nome]
gaver migrate up
gaver migrate down
gaver migrate status# 1. Criar projeto
gaver init blog -d sqlite -t web
# 2. Criar módulo
gaver module create posts
# 3. Criar model
gaver module model posts Post
# 4. Editar modules/posts/models/post.go
# Adicionar campos com annotations:
# // gaverModel: writable:post,put; readable; required
# Title string `json:"title"`
# 5. Gerar CRUD
gaver module crud posts Post
# 6. Migrations
gaver makemigrations
gaver migrate up
# 7. Rodar
gaver serveContribuições são bem-vindas! Este projeto está em desenvolvimento ativo.
MIT License - veja LICENSE para detalhes.
Desenvolvido com ❤️ usando Go e Quasar