A organização de pastas do projeto no Front-End é feita dividindo as responsabilidades em módulos para organizar o projeto como um todo e facilitar o desenvolvimento. Os modulos são:
- components: Módulo que comporta todos os componentes feitos no projeto;
- core: Módulo que possui arquivos e utilitarios essenciais para o funcionamento da aplicação;
- domain-types: Módulo referente a todos os tipos criados com o auxilio do Typescript;
- services: Módulo que comporta todos os services que fazem comunicação com o Back-End;
- styles: Módulo que comporta estilizações globais;
- pages: Módulo que comporta todos os componentes referentes às páginas, seus modais, hooks, serviços que se comunicam e etc.
Antes de tudo é necessário instalar:
-
Instalando o TypeScript
npm install -g typescript.
-
Instalando o yarn
npm install --global yarn
-
Verificando se o yarn está instalado
yarn --version
-
Clonando o respositório
git clone https://github.com/augustodevjs/teste-tecnico-fullstack
-
Entre no diretório do front
cd ./frontend
-
Variável de Ambiente
crie um arquivo chamado .env e copie a url da api para esse arquivo de acordo com .env.example
-
Installando as dependencias do projeto com yarn
yarn
-
Rodando o projeto no modo de desenvolvimento
yarn run dev
Foi utilizado o framework .NET 7 e Entity Framework com a arquitetura divida em módulos e a conexão com o banco de dados postgresql, mas com a organização de pasta seguindo a modelagem de DDD (Domain Driven Desing) para facilitar a implementação de regras de negócios e outros processos complexos.
Dito isso, o projeto foi estruturado em 5 "camadas" que são:
- API: Comporta configurações da aplicação e controllers;
- application: Cuida da comunicação com o Domain, comportando: classes de serviços, interfaces, DTOs, etc;
- infra: Comporta o suporte geral às demais implementações como repositories, mappers, contextos, etc;
- domain: Comporta todas as entidades, interfaces e classes de serviços;
- tests: Comporta todos os testes das services.
-
NET SDK
-
Postgresql
-
DBeaver
-
Entre no diretório do back
cd ./backend/src/Store.API
-
Rode a API
dotnet run
-
Para vê os testes unitários do backend entre no diretório
cd ./backend/tests/Store.Application.Tests
-
Rode os Testes
dotnet test