Microsserviço robusto para gerenciar controladores, encarregados (DPOs), grupos econômicos e quadros societários, em conformidade com a LGPD.
- CRUD completo para todas as entidades:
- Controladores (empresas)
- Encarregados (DPOs)
- Grupos Econômicos
- Sócios
- Relacionamentos entre sócios e controladores.
- Paginação e filtros em listagens.
- Documentação da API gerada automaticamente com Swagger.
- Framework: NestJS (v11.1.3)
- Linguagem: TypeScript (v5.8.3)
- ORM: Prisma (v6.11.1)
- Banco de Dados: PostgreSQL
- Documentação: Swagger
-
Clone o repositório:
git clone https://github.com/seu-usuario/cadastro-controladores-api.git cd cadastro-controladores-api
-
Instale as dependências:
npm install
-
Configure as variáveis de ambiente:
- Renomeie o arquivo
.env.example
para.env
. - Preencha as variáveis, especialmente a
DATABASE_URL
.
- Renomeie o arquivo
-
Inicie o banco de dados com Docker:
docker-compose up -d
-
Aplique as migrações do Prisma:
npx prisma migrate dev
# Modo de desenvolvimento (com hot-reload)
npm run start:dev
# Modo de produção
npm run start:prod
A API estará disponível em http://localhost:3000
.
# Testes unitários
npm run test
# Testes end-to-end (E2E)
npm run test:e2e
# Relatório de cobertura de testes
npm run test:cov
A documentação completa dos endpoints está disponível via Swagger UI:
- Swagger UI: http://localhost:3000/api
- Swagger JSON: http://localhost:3000/swagger-json
/
├── prisma/ # Schema, migrações e seeds do banco
├── src/ # Código-fonte da aplicação
│ ├── common/ # Módulos e utilitários comuns
│ ├── modules/ # Módulos de cada entidade (controlador, socio, etc.)
│ └── main.ts # Arquivo de entrada da aplicação
├── test/ # Testes E2E
└── package.json # Dependências e scripts
Contribuições são bem-vindas! Siga os passos:
- Faça um fork do projeto.
- Crie uma nova branch (
git checkout -b feature/nova-funcionalidade
). - Faça commit das suas alterações (
git commit -m 'Adiciona nova funcionalidade'
). - Faça push para a branch (
git push origin feature/nova-funcionalidade
). - Abra um Pull Request.
Este microsserviço é mantido pela: DDSS – Divisão de Desenvolvimento e Sustentação de Sistemas CGTI/ANPD – Coordenação-Geral de Tecnologia da Informação Autoridade Nacional de Proteção de Dados (ANPD)
Distribuído sob a licença MIT. Veja LICENSE
para mais informações.