Decisões técnicas de arquitetura e stack. Usar quando: precisa definir tecnologias, arquitetura, padrões de código, ou escolher skills para um projeto. Trigger: 'qual stack', 'como arquitetar', 'que tecnologia usar'.
Tomar decisões técnicas sólidas baseadas no contexto do projeto.
| Critério | Rails 8 | Next.js |
|---|---|---|
| Velocidade de dev | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| Real-time | Hotwire/Turbo | WebSockets/Pusher |
| API | Built-in | API Routes |
| Auth | Devise (fácil) | NextAuth (médio) |
| Admin | Rails Admin | Custom |
| Melhor para | CRUD, SaaS interno | SaaS público, landing |
Recomendação padrão: Rails 8 + Hotwire + Tailwind
| Critério | SQLite | PostgreSQL |
|---|---|---|
| Setup | Zero | Precisa instalar |
| Dev local | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
| Produção | Litestream | Supabase/Neon |
| Melhor para | MVP, projetos pessoais | SaaS, multi-tenant |
Recomendação padrão: SQLite pra dev, PostgreSQL pra prod
| Opção | Quando usar |
|---|---|
| Devise (Rails) | Padrão pra Rails |
| NextAuth | Padrão pra Next.js |
| Clerk/Auth0 | Se precisa social login fácil |
| Nenhum | App pessoal single-user |
Projeto tem UI?
└─ SIM → frontend-design (OBRIGATÓRIO)
Projeto é React/Next.js?
└─ SIM → react-best-practices
Projeto tem banco de dados?
└─ PostgreSQL → postgres-best-practices
Projeto tem pagamentos?
└─ SIM → stripe-best-practices
Projeto é SaaS público?
└─ SIM → copywriting, pricing-strategy, launch-strategy
Projeto tem landing page?
└─ SIM → page-cro, seo-audit, copywriting
Projeto precisa de copy elegante?
└─ SIM → beautiful-prose
Bundle: SaaS Starter
frontend-design
react-best-practices (ou Rails)
postgres-best-practices
copywriting
pricing-strategy
launch-strategy
Bundle: Internal Tool
frontend-design
postgres-best-practices
internal-comms
Bundle: Landing Page
frontend-design
copywriting
page-cro
seo-audit
schema-markup
Bundle: E-commerce
frontend-design
stripe-best-practices
postgres-best-practices
email-sequence
page-cro
{
"qualityGates": [
"bundle exec rails db:migrate",
"bundle exec rails assets:precompile"
]
}
⚠️ Evitar rspec e rubocop se não configurados
{
"qualityGates": [
"npm run build",
"npm run lint"
]
}
{
"qualityGates": [
"echo 'Build check passed'"
]
}
app/
├── controllers/ # Thin controllers
├── models/ # Fat models (business logic)
├── views/ # ERB + Hotwire
├── components/ # ViewComponents
├── services/ # Service objects (se complexo)
└── jobs/ # Background jobs
app/
├── (auth)/ # Route groups
├── api/ # API routes
├── components/ # React components
├── lib/ # Utilities
└── actions/ # Server actions
Após decisões, gerar: