Normas de desenvolvimento, configuracoes de ferramentas e fluxos de trabalho para projetos deznode. Este repositorio fornece documentacao reutilizavel, templates de configuracao e regras para Claude Code, para iniciar novos projetos.
| Camada | Tecnologias |
|---|---|
| Backend | Kotlin, Spring Boot 4, Spring Modulith 2.0, PostgreSQL, Flyway, Testcontainers |
| Frontend | Next.js 16, React 19, TypeScript, Tailwind CSS 4, Zustand |
| Mobile | Kotlin Multiplatform, Jetpack Compose, SQLDelight, Koin, Ktor |
| Ferramentas | Taskfile v3, Lefthook, ESLint, Prettier, ktlint, detekt, EditorConfig |
| Infraestrutura | Docker, Docker Compose, Terraform |
Este repo e um plugin Claude Code com um skill automatizado para configurar, atualizar e auditar projetos.
No diretorio do projeto alvo:
# Adicionar este repo como marketplace de plugins
/plugin marketplace add /path/to/coding-standards
# Instalar o plugin
/plugin install coding-standards@coding-standardsO skill e ativado automaticamente ao mencionar "coding standards", "bootstrap rules", "update rules", ou "audit standards". Ou invoca diretamente:
/coding-standards:coding-standards- Bootstrap -- Primeira configuracao: deteta o ecossistema (JVM/Node.js/KMP), copia regras, configs e hooks relevantes
- Update -- Sincroniza com os templates mais recentes: mostra diffs, permite selecionar atualizacoes
- Audit -- Verificacao sem alteracoes: pontua o projeto contra as normas atuais
Se preferir copiar os templates manualmente:
-
Criar o repositorio e clonar localmente.
-
Clonar este repo ao lado do projeto:
git clone https://github.com/deznode/coding-standards.git
-
Copiar configuracoes do editor e ferramentas:
cp coding-standards/templates/configs/.editorconfig . cp coding-standards/templates/configs/lefthook.yml . cp coding-standards/templates/configs/Taskfile.yml .
-
Configurar regras do Claude Code:
mkdir -p .claude/rules cp -r coding-standards/templates/claude-rules/* .claude/rules/ -
Configurar hooks do Claude Code:
mkdir -p .claude/hooks cp -r coding-standards/templates/claude-hooks/* .claude/hooks/ -
Instalar git hooks:
lefthook install
-
Personalizar: Editar os ficheiros copiados para corresponder a estrutura do projeto, nomes dos modulos e versoes das ferramentas.
-
Consultar a documentacao: Usar
docs/como referencia para decisoes de arquitetura, padroes de codigo e convencoes de fluxo de trabalho.
Toda a documentacao detalhada esta em ingles na pasta docs/. Abaixo os links diretos:
| Documento | Descricao |
|---|---|
| Architecture | Spring Modulith, padroes DDD, comunicacao por eventos |
| API Design | Controllers, padroes HTTP, validacao |
| Kotlin Conventions | Jackson 3.x, logging, transacoes, convencoes de nomes |
| Database Patterns | Flyway, entidades, UUID, JSONB, pesquisa full-text |
| Security | Autenticacao JWT, autorizacao, rate limiting |
| Testing | Testes de integracao, MockMvc, MockK, Testcontainers, fixtures |
| Error Handling | Hierarquia de excecoes sealed, ProblemDetail (RFC 9457), @ControllerAdvice |
| Documento | Descricao |
|---|---|
| Architecture | Next.js App Router, server components, caching |
| Component Patterns | forwardRef, clsx, loading states |
| State Management | Zustand, TanStack Query, Zod schemas |
| Styling | Tokens de design, dark mode, Tailwind CSS 4 |
| API Client | Factory pattern, hooks, data fetching |
| Performance | Waterfalls, bundle size, otimizacao server-side, Suspense |
| Documento | Descricao |
|---|---|
| Architecture | Modulos KMP, source sets, DDD para mobile |
| Build Configuration | Convention plugins, version catalogs, Gradle |
| Compose Patterns | Route/Screen, gestao de estado, navegacao |
| Kotlin Conventions | Expect/actual, Koin DI, kotlinx-serialization, Ktor |
| Offline First | SQLDelight, estrategias de sync, outbox |
| Testing | Piramide de testes, Compose, Flow, screenshot tests |
| Quality Tooling | Detekt, ktlint, Kover, ArchUnit |
| Documento | Descricao |
|---|---|
| Git Workflow | Conventional commits, branches, PRs |
| Testing Strategy | Filosofia de testes e niveis |
| Linting | ESLint, Prettier, ktlint, detekt |
Estas normas sao documentos vivos. Para propor uma alteracao:
- Abrir um PR neste repositorio com a alteracao proposta.
- Incluir justificacao — explicar que problema a alteracao resolve.
- Referenciar evidencias — linkar incidentes, discussoes de code review ou praticas da industria.
- Dar tempo para revisao — as alteracoes afetam todos os projetos. Dar pelo menos uma semana para comentarios.
