Este repositório contém o projeto para o teste técnico destinado à vaga de Desenvolvedor Python Fullstack na Bnex. O objetivo do projeto é demonstrar habilidades no desenvolvimento de aplicações Fullstack, envolvendo a criação de uma API com Django Rest Framework (DRF) e uma interface de usuário utilizando Django Templates.
O projeto é dividido em três principais componentes, cada um rodando em contêineres separados usando Docker e Docker Compose:
-
Backend (API): Implementado com Django Rest Framework (DRF). Inclui:
- Módulo de Usuários: CRUD completo para gerenciamento de usuários.
- Módulo de Produtos: CRUD completo para gerenciamento de produtos.
- Testes Unitários: Inclui uma cobertura básica de testes para garantir o funcionamento correto da API.
- Commit Lint: Configurado para garantir que as mensagens de commit sigam um padrão definido.
-
Frontend: Desenvolvido com Django Templates. Inclui:
- Interface de Usuário: Permite a interação com os módulos de usuários e produtos.
- Testes Funcionais: Realiza testes para garantir que a interface funcione conforme o esperado.
-
Banco de Dados: PostgreSQL, utilizado tanto para o backend quanto para o frontend.
Para configurar e executar o projeto, siga os passos abaixo:
-
Clone o Repositório:
git clone https://github.com/0x1Ry4n/desafio-bnex.git cd desafio-bnex
-
Crie e Inicie os Contêineres: O arquivo
docker-compose.yml
define três serviços:-
db-server: Servidor PostgreSQL.
-
api: Servidor de backend.
-
app: Servidor de frontend.
-
Utilize este comando criará e iniciará os contêineres para o backend, frontend e banco de dados:
docker-compose up --build
-
-
Acesse o Backend:
- A API estará disponível na porta
API_LOCAL_PORT
definida no arquivo .env:
http://localhost:(port)/v1/api/
- A API estará disponível na porta
-
Acesso o Frontend:
- O frontend estará disponível na porta
APP_LOCAL_PORT
definida no arquivo .env:http://localhost:(port)/