Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mateusfg7/proffy
:busts_in_silhouette: Plataforma de estudos online, onde é possível conectar alunos com professores. Este é um projeto que foi desenvolvido durante a Next Level Week #2 da @Rocketseat, durante os dias 3 à 7 de agosto de 2020.
https://github.com/mateusfg7/proffy
expo knexjs nlw nlw-2 nlw-booster nodejs proffy react react-native rocketseat sqlite3 styled-components typescript
Last synced: about 1 month ago
JSON representation
:busts_in_silhouette: Plataforma de estudos online, onde é possível conectar alunos com professores. Este é um projeto que foi desenvolvido durante a Next Level Week #2 da @Rocketseat, durante os dias 3 à 7 de agosto de 2020.
- Host: GitHub
- URL: https://github.com/mateusfg7/proffy
- Owner: mateusfg7
- Created: 2020-08-03T18:57:51.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-08-12T20:16:04.000Z (over 3 years ago)
- Last Synced: 2024-10-02T08:55:08.929Z (about 1 month ago)
- Topics: expo, knexjs, nlw, nlw-2, nlw-booster, nodejs, proffy, react, react-native, rocketseat, sqlite3, styled-components, typescript
- Language: TypeScript
- Homepage:
- Size: 8.8 MB
- Stars: 12
- Watchers: 3
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[logo-url]: https://camo.githubusercontent.com/74c8681f6d4521903b63e79173a72f0b849243be/68747470733a2f2f692e696d6775722e636f6d2f73356c546465502e706e67
[web-badge]: https://img.shields.io/badge/WEB-6842C2?logo=typescript&logoColor=47248F&label=Proffy&labelColor=6842C2&style=for-the-badge
[backend-badge]: https://img.shields.io/badge/BACKEND-04D361?logo=Node.js&logoColor=03A14A&label=Proffy&labelColor=04D361&style=for-the-badge
[mobile-badge]: https://img.shields.io/badge/MOBILE-494949?logo=react&logoColor=161616&label=Proffy&labelColor=494949&style=for-the-badge# ![Proffy][logo-url]
### Plataforma de estudos online, onde é possivel conectar alunos com professores.
[![web][web-badge]](#desktop_computer-web)
[![backend][backend-badge]](#globe_with_meridians-server)
[![mobile][mobile-badge]](#iphone-mobile)![](.github/docs/img/landing.svg)
---
O Proffy é um projeto que esta sendo desenvolvido durante a **Next Level Week #2** da [@Rocketseat](https://github.com/Rocketseat), durante os dias _3 à 7 de Agosto de 2020_.
Este projeto esta sendo codado na trilha OmniStack, que desenvolve a stack JavaScript completa, do zero, criando as versões Web, Mobile e Back-End da aplicação.
> [Anotações - NOTES.md](NOTES.md)
---
# :desktop_computer: _**WEB**_
[![LAYOUT WEB](https://img.shields.io/badge/Layout%20Web-black?style=for-the-badge&logo=figma&logoColor=red)](https://www.figma.com/file/GHGS126t7WYjnPZdRKChJF/Proffy-Web?node-id=27%3A1703)A versão web da aplicação fei desenvolvida usando a metodologia _mobile first_, em que a aplicação é pensada primeiramente para dispositivos mobile, e depois é adaptada para dispositivos desktops.
Foi usada as tecnologias [**React**](https://reactjs.org/) e [**Typescript**](https://www.typescriptlang.org/) para o desenvolvimento da aplicação web.
> O código fonta da aplicação web esta na pasta
## :arrow_forward: **Getting Started**
Entre na pasta [`web/`](web/) e execute os seguintes comandos:
_com **npm**_
```bash
# Instalar dependências
$ npm install# Iniciar servidor de desenvolvimento
$ npm start
```_com **yarn**_
```bash
# Instalar dependências
$ yarn# Iniciar servidor de desenvolvimento
$ yarn start
```> O servidor de desenvolvimento fica aberto por padrão em [`http://localhost:3000`](http://localhost:3000)
Gerar código de produção
_com **npm**_
```bash
$ npm build
```_com **yarn**_
```bash
$ yarn build
```> O código fica salvo em [`build/`](web/build)
# :iphone: _**Mobile**_
[![LAYOUT MOBILE](https://img.shields.io/badge/Layout%20Mobile-black?style=for-the-badge&logo=figma&logoColor=red")]()O aplicação mobile foi desenvolvida usando o framework [**React Native**](https://reactnative.dev/) com [**Typescript**](https://www.typescriptlang.org/), e a _SDK 38_ da ferramenta [**Expo**](https://expo.io/).
Home | Study | Favorites
---|---|---
| ![home](.github/docs/screenshots/mobile/home.png) | ![study](.github/docs/screenshots/mobile/study.png) | ![favorites](.github/docs/screenshots/mobile/favorites.png) |## :arrow_forward: **Getting Started**
Entre na pasta [`mobile/`](mobile/) e execute os seguintes comandos:
_com **npm**_
```bash
# Instalar expo-cli globalmente
$ npm install expo-cli --global# Instalar dependências
$ npm install```
_com **yarn**_
```bash
# Instalar expo-cli globalmente
$ yarn global add expo-cli# Instalar dependências
$ yarn```
Iniciar DevTools do expo
```bash
$ expo start
```> O DevTools do Expo fica aberto por padrão em [`http://localhost:19002`](http://localhost:19002)
# :globe_with_meridians: _**Server**_
O servidor da aplicação foi desenvolvido seguindo a metodologia _API Rest_ para poder ser reaproveitada tanto na web quando em dispositivos mobile.
Foi usada as tecnologias [**NodeJS**](https://nodejs.org/) com [**Typescript**](https://www.typescriptlang.org/), banco de dados [**SQLite3**](https://sqlite.org/) com query builder [**Knex**](http://knexjs.org/), e o framework [**Express**](http://expressjs.com/), no desenvolvimento da API Rest.
## :pencil2: Funcionalidades
### Conexões
- _Rota para lista o total de conexões realisadas._
- _Rota para criar uma nova conexão._### Aulas
- _Rota para criar uma aula._
- _Rota para listar aulas._
- _Filtrar por matéria, dia da semana, e horário._## :arrow_forward: **Getting Started**
Entre na pasta [`server/`](server/) e execute os seguintes comandos:
_com **npm**_
```bash
# Instalar dependências
$ npm install# Criar database
$ npm knex:migrate# Iniciar servidor
$ npm start
```_com **yarn**_
```bash
# Instalar dependências
$ yarn# Criar banco de dados
$ yarn knex:migrate# Iniciar servidor de desenvolvimento
$ yarn start
```> O Banco de Dados fica salvo em [`src/database/database.sqlite`](src/database/database.sqlite)
> O endereço padrão do servidor Node é [`http://localhost:3333`](http://localhost:3333)
---