Skip to content

Unity-Media-and-social-communication/EstuDoar

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Badge Badge Badge Badge Badge Badge Badge Badge Badge Badge

EstuDoar - A melhor forma de doar conhecimento

  1. Sobre
  2. Especificações
  3. Conteúdo externo
  4. Instalação de Backend
  5. Instalação de Frontend
  6. Navegando
  7. Features futuras
  8. Licença

Sobre

EstuDoar é uma plataforma WEB desenvolvida durante o hackathon do Programa de Formação da FCamara, num período de 15 dias, com o intuito de facilitar a doação de materiais escolares, assim como o acesso dos materiais doados para quem precisa. O objetivo é que por meio da plataforma seja possível doar tendo como perspectiva a necessidade específica dos estudantes cadastrados na aplicação, tornando viável a chegada fácil dos materiais aqueles que necessitam, integrando a solução lógica, desenvolvida por meio de software com o mundo físico.


Especificações

O backend da aplicação foi codificado utilizando Node.js com Typescript, utilizando os princípios SOLID da programação orientada a objetos, alinhados com conceitos de Clean Architecture, utilizando DDD (Domain Driven Design) como design pattern e TDD (Test Driven Development) como metodologia de trabalho. Conceitos de Conventional Commits, foram utilizados para mapear melhor o histórico de implementação de código. O frontend foi codificado utilizando React para criação das interações do usuário. O Jest foi utilizado para executar os testes unitários e o Eslint foi utilizaddo para padronização de código. Além disso, utilizamos Husky para criar gatilhos pré-commit, garantindo a eficiência dos testes.

Requisitos backend

  • Node.js x64 - versão 14.16.0
  • MongoDB x64 - versão 4.4.4
  • Npm x64 - versão 6.14.11
  • Typescript x64 - versão 4.4.3
  • Docker x64 - versão 20.10.5

Requisitos frontend

  • Node.js x64 - versão 14.16.0
  • Npm x64 - versão 6.14.11
  • ReacJS - versão 17.0.2

Conteúdo Externo

  1. Aqui você pode encontrar informações específicas sobre as funcionalidades.

  2. Utilizar o link da API em produção para realizar as requisições.

  3. Diagramas UML desenvolvidos para definir a arquitetura da aplicação

  4. Foram criados dois vídeos para a iniciativa: um vídeo pitch e outro demonstrando a ideia inicial por meio de protótipo desenvolvido pelos UXs. Vale a pena conferir:
  5. Também escrevemos um artigo documentando todo o processo de criação das telas e interface do usuário


Instalação de Backend

01 - Instale o docker. Posteriormente ele instalará o Node.js e o MongoDB;

02 - Instale o Typescript. Este precisa ser instalado globalmente;

03 - Instale o docker;

04 - Após a instalação do tyspescript, dê um fork ou clone este repositório em sua máquina local;

05 - Entre no diretório /backend e instale as dependências do backend:

> npm install

06 - Entre no diretório /backend e inicie o docker:

> npm run up

[Opcional] Caso queria desligar o docker rode o comando:

> npm run down

[Opcional] Caso queria visualizar os testes, execute o comando:

> npm test

07 - Agora, está na hora de instalar o frontend:


Instalação de Frontend

01 - Agora, troque para o diretório da /frontend e execute o seguinte comando:

> npm install

02 - Agora inicie a aplicação localmente utilizando o comando:

> npm start

03 - A aplicação está consumindo os dados da API hospedada no Heroku, portanto ela funciona independentemente do módulo de backend estar rodando em sua máquina.

Está na hora de degustar a experiência do EstuDoar!!!

Navegando

Durante a navegação é necessário logar uma conta de usuário receptor de doação fictício, seguem dados:

email: any_email@email.com

senha: 123

Features futuras

01 - [ ] Implementação de listagem dinâmica das escolas por meio do banco de dados;

02 - [ ] Gameficação da experiência do usário em relação às doações feitas, onde o usuário desbloqueia medalhas de acordo com o número de doações que faz;

03 - [ ] Implementação de status do andamento da doação para doador e aluno;

04 - [ ] Modernização da escrita do frontend em React;

05 - [ ] Padronização de classes CSS;

06 - [ ] Implementação de React context;

07 - [ ] Implementação de controle de sessão;

08 - [ ] Utilização de eslint no frontend.

Licença

About

Main repo to build a school supplies donation system.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 80.2%
  • JavaScript 15.0%
  • CSS 4.1%
  • HTML 0.7%