A aplicação está hospedada no Railway e pode ser acessada através deste link:
Acesse o FarmTech/Covidômetro Online 🚀
Este projeto foi desenvolvido para cumprir um teste técnico para a empresa Farm Investimentos. O Covidômetro é uma aplicação web SPA que apresenta uma interface moderna e responsiva. Utilizando as melhores práticas de desenvolvimento frontend, a aplicação foi desenvolvida com foco em desempenho, responsividade e facilidade de manutenção.
- Responsividade: A aplicação se adapta a diferentes tamanhos de tela, proporcionando uma ótima experiência tanto em dispositivos móveis quanto em desktops.
- Organização BEM: O projeto foi estruturado utilizando a metodologia BEM para garantir uma organização clara e consistente dos arquivos SCSS.
- Testes Automatizados: O projeto possui testes unitários automatizados, que são executados automaticamente no GitHub Actions a cada commit/pull request.
- Desenvolvimento em Vite: Utiliza Vite como ferramenta de build para um desenvolvimento rápido e eficiente.
- Hospedagem no Railway: A aplicação está hospedada no Railway, pronta para ser acessada publicamente.
- Consulta Dinâmica: Interface dinâmica para exibir e filtrar dados.
- Design Responsivo: Adaptado para funcionar bem em dispositivos móveis, tablets e desktops.
- Testes Automatizados: Pipeline de CI/CD configurado para rodar os testes unitários automaticamente.
- Vue 3: Framework JavaScript progressivo para construção de interfaces de usuário.
- Vite: Ferramenta de build rápida e moderna para desenvolvimento frontend.
- SCSS (BEM): Metodologia BEM utilizada para organização dos estilos SCSS.
- TypeScript: Tipagem estática para maior robustez no código.
- GitHub Actions: Configurado para execução automatizada dos testes em cada push/pull request.
- Railway: Hospedagem rápida e eficiente.
Siga os passos abaixo para clonar e rodar o projeto em sua máquina local.
- Node.js (versão 16.x ou superior)
- NPM (versão 8.x ou superior)
-
Clone o repositório:
git clone https://github.com/sdq-sts/farmtech
-
Navegue até o diretório do projeto:
cd farmtech
-
Instale as dependências:
npm install
-
Rode o projeto em modo de desenvolvimento:
npm run dev
A aplicação estará disponível em http://localhost:5173/
Para rodar os testes unitários:
npm run test
Os testes são executados automaticamente no GitHub Actions, garantindo a integridade do código.
A estrutura do projeto segue a metodologia BEM para garantir que os estilos estejam organizados de forma modular e fácil de manter.
src/
├── App.vue
├── assets
│ ├── imgs
│ │ ├── doctors.svg
│ │ └── logo.png
│ ├── main.scss
│ └── variables.scss
├── components
│ ├── SearchBar.vue
│ ├── SearchContainer.vue
│ ├── SearcherIcon.vue
│ ├── SearchResultCard.vue
│ ├── SiteHeader.vue
│ ├── SiteHero.vue
│ └── __tests__
│ ├── SearchBar.spec.ts
│ ├── SearchResultCard.spec.ts
│ ├── SiteHeader.spec.ts
│ └── SIteHero.spec.ts
├── composables
│ ├── useFetchAllRegions.ts
│ └── useFetchReportsTotal.ts
├── main.ts
├── router
│ └── index.ts
├── services
│ └── index.ts
├── utils
│ └── index.ts
└── views
└── HomeView.vue
O projeto está configurado para rodar testes automatizados utilizando o GitHub Actions a cada push ou pull request para a branch main. Isso garante que o código esteja sempre em conformidade com os padrões de qualidade.
- Testes Automáticos: Configurado para rodar os testes com Vitest.
- Hospedagem: Utilizei Railway para o deploy contínuo da aplicação.
Durante o desenvolvimento do Covidômetro, descobri que a API usada foi descontinuada em 10 de março de 2023. Isso limitou algumas funcionalidades que eu planejava implementar, como atualizações de dados mais recentes. Mesmo assim, a aplicação foi construída com os dados disponíveis até essa data.
Caso tenha dúvidas ou queira entrar em contato, fique à vontade para me chamar no LinkedIn. 👨💻 Desenvolvido por Sadraque Santos.