Onboarding — novo developer
Objectivo: no primeiro dia conseguir login local, ler o Swagger e saber onde mexer sem partir tenant/JWT.
Dia 1 — ambiente
- Acesso ao GitHub
Gevtech/ARKUS_BACKENDe à BD de desenvolvimento (duas conexões). Peça credenciais pelo canal interno — não as copie de produção. - Siga setup/instalacao.md: clone
Develop,.enva partir de.env.example,npm install,npm run start:dev. - Confirme
GET /api/healthePOST /api/v1/auth/logincom um user de dev. - Abra http://localhost:3000/api/docs e importe o Postman em
docs/postman/.
O que ler (nessa ordem)
- README — cartão de visita
- apis/00-visao-geral.md — auth, erros, módulos
- apis/catalogo-completo.md — mapa de rotas
- arquitetura/visao-completa.md — dual BD, presença
- CONTRIBUTING.md — branch
feat/…, Conventional Commits, PR paraDevelop
Mapa mental do código
src/
main.ts bootstrap, CORS, Swagger, prefixo /api
app.module.ts duas conexões TypeORM + módulos
modules/auth JWT strategy + guard global
modules/auth-login login, users, roles, branding user
modules/password-reset reset, first-access, templates
modules/company empresas + diretório (domain/application/infra/presentation)
modules/company-operational
modules/presence REST + Gateway
modules/white-label
modules/portal-subdomain
modules/external-apis
Padrão a copiar para recursos novos: src/modules/company/README.md.
Regras que evitam incidentes
- Não commitar
.env. Não logar JWT. - Não ligar
synchronize. Schema = SQL emdocs/sql/. - Rotas novas nascem autenticadas.
@Public()só com justificação no PR. - Tenant: claim ou
x-tenant-id. Teste com user não-admin. - Presença é memória local — não assuma multi-pod.
Primeiro PR sugerido
Algo isolado: teste, doc, ou DTO. Corra npm run lint && npm run test && npm run build. Use o template de PR.
Contactos
- Segurança: SECURITY.md
- Reviewers por pasta: .github/CODEOWNERS
- Conduta: CODE_OF_CONDUCT.md