Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lucasbecker/proffy
Projeto desenvolvido durante a Next Level Week #2 da Rocketseat utilizando React, React Native, Expo e NodeJS.
https://github.com/lucasbecker/proffy
api-restfull knex node react react-native sqlite typescript
Last synced: 30 days ago
JSON representation
Projeto desenvolvido durante a Next Level Week #2 da Rocketseat utilizando React, React Native, Expo e NodeJS.
- Host: GitHub
- URL: https://github.com/lucasbecker/proffy
- Owner: lucasbecker
- License: mit
- Created: 2020-08-03T19:29:40.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-11T03:32:35.000Z (almost 2 years ago)
- Last Synced: 2023-03-05T14:49:54.459Z (almost 2 years ago)
- Topics: api-restfull, knex, node, react, react-native, sqlite, typescript
- Language: TypeScript
- Homepage:
- Size: 3.14 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
> Projeto desenvolvido durante a Next Level Week #2 da [Rocketseat](https://rocketseat.com.br/).
## Overview
O projeto Proffy é uma plataforma criada para conectar professores e alunos. Através da aplicação web e mobile os professores são capazes de oferecerem aulas, cadastrando a disciplina e os seus horários disponíveis e os alunos são capazes de encontrarem professores para determinada disciplina e horário.## Front-end
### Web
O front-end web da plataforma foi desenvolvido com **React**, inicializado com Create React App, estilizado para ser responsivo e utilizando React Router DOM para que possibilite ser uma Single Page Application para uma melhor experiência do usuário final. Para mais detalhes veja o arquivo [package.json](https://github.com/lucasbecker/proffy/blob/master/web/package.json) no diretório web.
### Mobile
O front-end mobile da plataforma foi desenvolvido com **React Native** em conjunto do **Expo** e utilizando pacotes como: React Navigation, Axios e outros. Para mais detalhes veja o arquivo [package.json](https://github.com/lucasbecker/proffy/blob/master/mobile/package.json) no diretório mobile.
## Back-end
O back-end de ambas aplicações, web e mobile, foi desenvolvida com **NodeJS** e é uma API Rest. O banco de dados utilizado foi **SQLite** através do **Knex**. Para mais detalhes veja o arquivo [package.json](https://github.com/lucasbecker/proffy/blob/master/server/package.json) no diretório server.As funcionalidades da API são:
* Criar nova conexão;
* Listar o total de conexões realizadas;
* Criar "aula";
* Listar aulas cadastradas;
* Filtrar por disciplina, dia da semana e horário.## Setup
Primeiramente, tenha o [NodeJS](https://nodejs.org/) instalado ou faça o download e a instalação. Com o NodeJS instalado, realize o download do projeto, abra o terminal no diretório desejado e para instalar o restante dos pacotes digite:
```sh
npm install
```
No diretório `server` para criar o banco de dados padrão digite:
```sh
npm run knex:migrate
```
No diretório `server`, `web` e `mobile` para inciar as aplicações digite:
```sh
npm start
```
O servidor estará executando em [localhost:3333](http://localhost:3333), a aplicação web abrirá em [localhost:3000](http://localhost:3000) e a aplicação mobile executará em [localhost:19002](http://localhost:19002/). Para abrir a aplicação mobile em seu próprio dispositivo físico ou em algum emulador é preciso ter o aplicativo Expo instalado.## [Next Steps](https://www.notion.so/Vers-o-2-0-Proffy-eefca1b981694cd0a895613bc6235970)
- [ ] Autenticação de usuários
- [ ] Recuperação de senhas
- [ ] Perfil do proffy
- [ ] Splash Screen no React Native com Expo
- [ ] Paginação na listagem de proffys
- [ ] Exibindo horários disponíveis dos proffys
- [ ] Salvando seus proffys favoritos
- [ ] Logout da aplicação
- [ ] Deploy da aplicação## License
[MIT License](./LICENSE) | [Rocketseat](https://rocketseat.com.br/) | [Lucas Becker](http://lucasbecker.github.io/)