O CAPJu é abreviação para "Controle e Acompanhamento de Processos da Justiça", no qual trata-se de uma projeto de código aberto que tem como objetivo ajudar os usuários da 4ª vara cível da Justiça Federal na realização de gerenciar os processos.
Este repositório contém o código-fonte do backend do projeto CAPJu, seguindo uma arquitetura de microserviços. Cada pasta neste repositório representa um serviço separado, permitindo a modularização e escalabilidade do sistema.
- Serviço de Usuário (User): Serviço destinado a oferecer funcionalidades robustas e escaláveis para gerenciar a autenticação, autorização, listagem e perfis dos usuários.
- Serviço de Unidades (Unit):
- Serviço de Email (Mailer):
POSTGRES_DATABASE=
POSTGRES_PORT=
POSTRES_USER=
POSTGRES_PASSWORD=
DB_NAME=
DB_HOST=
DB_USER=
DB_PASSWORD=
DB_DIALECT=
DB_PORT=
USER_URL_API=
Esse projeto conta com a versão 18 no NodeJs.
O Node Version Manager, mais comumente chamado de NVM, é a maneira mais popular de instalar várias versões do Nodejs. Essa tecnologia é recomendada para o desenvolvedor poder gerenciar diferentes versões do NodeJs conforme a necessidade do projeto.
Por conter uma arquitetura de microserviços, é necessário rodar cada serviço separadamente conforme a necessidade de uso.
# Para rodar o projeto pela primeira vez basta executar o comando:
nvm use 18
# Esse comendo irá defirnir a versão de desenvolvimento do NodeJs como 18
npm install
# Esse comendo irá instalar as bibliotecas
npm start
# Esse comando irá subir o servidor ocupando a porta 8080.
Pode ser utilizado o seguinte comando para inserir novas dependencias na aplicação:
npm install nome-da-dependencia
É utilizado um sistema de migrations para mantermos o banco de dados sempre atualizado:
Obs: Para rodar os comandos listados abaixo, é necessário a criação prévia da base de dados que terá o mesmo nome da variável DB_NAME encontrada no .env.
Obs: Pra executar esses comandos, se faz necessário a instalação da sequelize-cli como pacote externo.
npm install -g sequelize-cli
# Esse comando irá instalar a sequelize-cli de maneira global e irá permitir que você rode comandos com o npx.
npm run migration OU npx sequelize-cli db:migrate
# Esse comando irá rodar as migrations criando as tabelas no seu banco da dados.
Caso seja necessário remover a última migration, pode ser usado esse comando:
npm run shred OU npx sequelize-cli db:migrate:undo
# Esse comando irá remover a última migration criada.
A biblioteca Prettier é a ferramente utilizada para adicionar a formatação padrão de código, e pode ser aplicada com o seguinte comando:
npm run prettify
## Esse comando irá padronizar o estilo de código para o padrão estabelecido no projeto.
npm run check-format
## Esse comando irá verificar erros de sintaxe e possíveis melhorias.
npm run test
## Esse comando irá rodar os testes do serviço escolhido.
Certifique-se de ler o Guia de Contribuição antes de realizar qualquer atividade no projeto!
O CAPJu está sob as regras aplicadas na licença MIT