O projeto foi gerado na versão 17.0.0 do Angular Framework.
Antes de rodar o servidor de desenvolvimento, baixar as dependencias do projeto.
Certifique-se de estar usando a versão 18.18.0 do Nodejs.
Rode o seguinte comando para garantir a equivalência do lock json file ao baixar as libs: npm ci
Antes de subir o servidor de mock, caso queira testar sem o uso da API, é necessário realizar
duas configurações bem simples:
Certifique-se que para os dados serem apresentados em tela é necessário navegar até o arquivo
BeneficiaryService
e procurar pela propriedade hasMock
e atribuir o valor Booleano true
, a fim
do método checar e setar manualmente
as seguintes porpriedades referente a data: addedDate
, updatedDate
,
os quais serão setados automaticamente na criação do recurso
ao bater na api do Java quando o valor estiver false
.
Também se certifique de alterar o valor da propriedade url
do mesmo arquivo BeneficiaryService para http://localhost:3000
, com o objetivo
da aplicação agora apontar para o json-server. Caso queira voltar,
basta retornar o valor incialmente setado: http://localhost:8080
Pronto, agora só rodar o seguinte comando no terminal npm run s:mock
para sua aplicação
rodar na porta 3000 com o json-server.
Para subir o servidor de desenvolvimento rode o seguinte comando npm run start
e navegue para http://localhost:4200/
na url do seu browser.
Para rodar o build execute o seguinte comando npm run build
e depois navegue para dentro da pasta
dist/ek-beneficiary
para checar os artefatos gerados.
Para rodar os teste unitários execute o seguinte comando no terminal npm run test
, apesar de não ter implementado nenhum teste específico.
A aplicação foi criada na versão 17 já com o objetivo de gerenciar o estado usando as novas features do framework, como os Signals, combinado de programação reativa utilizando o RXJS para chamadas HTTP.
Como se trata de um simples CRUD, não foi separado as camadas de services para lógicas de component e chamadas HTTP, logo tudo foi englobado em um único service modular com instância simulando um "singleton".
Foi utilizado a biblioteca do bootstrap para uma simples demonstração em virtude da criação de estilos de acordo com seu design system por motivos de fácil manipulação e "baixa escalabilidade".
Dentre outras que não estão presentes aqui (Angular Material, Material Design, PrimeNG, até o Tailwind CSS UI Kit)