Pular para o conteúdo principal

Onboarding — novo developer

Objectivo: no primeiro dia conseguir login local, ler o Swagger e saber onde mexer sem partir tenant/JWT.

Dia 1 — ambiente

  1. Acesso ao GitHub Gevtech/ARKUS_BACKEND e à BD de desenvolvimento (duas conexões). Peça credenciais pelo canal interno — não as copie de produção.
  2. Siga setup/instalacao.md: clone Develop, .env a partir de .env.example, npm install, npm run start:dev.
  3. Confirme GET /api/health e POST /api/v1/auth/login com um user de dev.
  4. Abra http://localhost:3000/api/docs e importe o Postman em docs/postman/.

O que ler (nessa ordem)

  1. README — cartão de visita
  2. apis/00-visao-geral.md — auth, erros, módulos
  3. apis/catalogo-completo.md — mapa de rotas
  4. arquitetura/visao-completa.md — dual BD, presença
  5. CONTRIBUTING.md — branch feat/…, Conventional Commits, PR para Develop

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 em docs/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