Sampi - MERN Project - Prova de Aptidão Tecnológica - 2020
If you want you can access the full english version by clicking here
Tomás Lopes > tomas050302@gmail.com
- Twitter: @tomaslopes_dev
- Github: @tomas050302
Este projeto tem como objetivo ser a minha Prova de Aptidão Tecnológica (PAT) a realizar no final do ano letivo 2019/2020.
A ideia do projeto é ter uma plataforma móvel capaz de gerir uma competição entre um grupo de amigos que joguem futebol em conjunto regularmente.
A aplicação tem a tarefa de gerar novas equipas cada vez que os jogadores marcarem um novo evento de maneira a todos os jogadores terem várias equipas ao longo do tempo.
Desta forma, será possível, com o passar dos eventos, determinar quem é o jogador que se destaca mais, independentemente da equipa em que joga.
Todo o design foi concebido por mim e foi utilizada a ferramenta Figma, e está acessível neste link.
O projeto é baseado numa stack, ou seja, um conjunto de tecnologias, muito popular entre as empresas de tecnologia hoje em dia, MERN.
MongoDB → databases Express → web APIs React → para criar a mobile app NodeJS → para ter tudo a funcionar direitinho
Uma ferramenta importante para trabalhar neste projeto é o package manager yarn que serve para gerir todas as dependências do projeto. Para o instalar na máquina local só é necessário correr os seguintes comandos na CL
Para instalar o Node JS na máquina só é necessário correr o comando:
Para ter a certeza que a versão instalada é pelo menos a exigída pelas dependências (neste projeto está a ser usada a versão estável a 13/01/2020 (12.14.1) utilizamos os seguintes comandos
Para iniciar o projeto é apenas necessário clonar o projeto para a máquina local De seguida é importante instalar todas as dependências
Existe um ficheiro cujo nome é .env.example que contem dummy data. Renomeia o ficheiro para .env e edita com os dados do teu servidor.
Esta dependência serve para dar uma interface gráfica ao programador na altura de formar a sua mensagem de commit. Em conjunto com o CommitLint que serve para uniformizar todas as mensagens de commits realizadas para o repositório Git, de maneira a ser mais simples de saber o que cada alteração fez no código e seguir a evolução do projeto ao longo do tempo.
Esta library de JavaScript serve para ser possível criar testes automatizados de todos os módulos implementados no código. Desta forma podemos assegurar que nada do que já está implementado se danifica com a implementação de uma nova feature. Com o Jest é também usada a library Supertest que serve para simular requests http nos testes do Jest. Também optei por incluir a dependência Faker que serve para gerar dados falsos para propósito de teste.
This README was generated with ❤️ by readme-md-generator