Skip to content

Projeto desenvolvido durante o evento da Next Level Week (NLW), provido pela RocketSeat em colaboração com outras empresas!

Notifications You must be signed in to change notification settings

Aristiklever-R-Sousa/Proffy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proffy

Edição desenvolvida por mim (Aristiklever) para ilustrar um pouco o sistema web e mobile.

Sobre 📝

O Proffy tem o intuito de conectar alunos aos seus professores!

Com um layault acessível, ele permite que professores se cadastrem rapidamente e que seus alunos não tenha dificuldades em os achar!

Tecnologias 💻

  • O server-side JavaScript: Node.js;
  • O framework front-side baseado em componentes: React;
  • O gerenciador de pacotes JavaScript: Yarn;
  • Uma ferramenta que vem sendo muito utilizada no desenvolvimento mobile: Expo.

Dependências

  • Antes de iniciar, algumas observações: algumas vezes, depois de adicionadas as dependências do projeto, quando chamada para uso, o recurso em questão poderá retornar um erro. Isso porque utilizamos typescript no projeto completo, então algumas dependências não vem convertidas para esse tipo por padrão, então, temos que fazer isso manualmente.
    • Ao passar o cursor por cima do erro, ele mostrará a comando que resolve aquele erro, exemplo: npm install @types/nome-da-depedência -D ou, se preferir, yarn add @types/nome-da-depedência -D
    • A flag '-D' serve para indicar que esses arquivos de tipagem são apenas para desenvolvimento, que não vão para produção.
  • Server-side:
    • Para lidar com as rotas no seu projeto, faremos uso da biblioteca express.
      • Para adicioná-lo, digite: yarn add express
    • No projeto, utilizamos como db o sqlite (saiba mais) e para lidar com os comandos sql, o knex (saiba mais).
      • Para adicioná-los ao seu projeto: yarn add knex sqlite3
    • Como, por default, a api node só pode ser acessada por outra aplicação se estiver no mesmo endereço, vamos utilizar o cors para solucionar isso.
      • Para adicioná-lo, digite: yarn add cors
  • Client-side:
    • Para conectar de fato o front com a api node, utilizamos o axios (saiba mais), que é uma espécie de promisse baseada nas requisições HTTP.
      • Para adicioná-lo, digite: yarn add axios
  • Mobile:
    • As fontes utilizadas no projeto mobile são as mesmas que a do web, porém, precisamos adicioná-las via expo no projeto mobile.
      • Para adicioná-las, digite: expo install expo-font @expo-google-fonts/archivo @expo-google-fonts/poppins
    • Para lidar com rotas no react-native, utilizamos uma biblioteca chamada react navigation (saiba mais).
      • Para adicioná-lo, digite: yarn add @react-navigation/native
      • Como estamos utilizando o expo, devemos adicionar as seguintes dependências: expo install react-native-gesture-handler react-native-reanimated react-native-screens react-native-safe-area-context @react-native-community/masked-view
    • Para uma navegação entre telas (indo e voltando com botões em cada tela, ou seja, em "pilha") utilizamos a biblioteca stack (saiba mais).
      • Para adicioná-lo, digite: yarn add @react-navigation/stack
    • Para uma navegação entre abas, uyilizamos o bottom-tabs (saiba mais)
      • Para adicioná-lo, digite: yarn add @react-navigation/bottom-tabs
    • Para conectar a nossa aplicação mobile com o server, também vamos precisar do axios e o comando é o mesmo utilizado na web
    • Para salvar os Proffys favoritos, não utilizamos o database em si, utilizamos o armazenamento local, o async-storage foi usado para manipular esse armazenamento interno
      • Para adicioná-lo, digite: expo install @react-native-community/async-storage

♻️ Como faço para contribuir?

  • Faça um Fork desse repositório;
  • Crie uma branch com a sua feature: git checkout -b my-feature
  • Commit suas mudanças: git commit -m 'feat: My new feature'
  • Push a sua branch: git push origin my-feature


Feito com muito ❤ por mim, Aristiklever Sousa😊.

About

Projeto desenvolvido durante o evento da Next Level Week (NLW), provido pela RocketSeat em colaboração com outras empresas!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages