/rs-nlw-12-spacetime

O Spacetime é uma plataforma que permite criar uma linha do tempo com recordações de memórias. Foi desenvolvido na trilha Ignite da Next Level Week #12.

Primary LanguageTypeScriptMIT LicenseMIT

A imagem contém um notebook e um smartphone com telas da aplicação

Next Level Week #12 - Spacetime

Sobre

O projeto foi desenvolvido durante a décima segunda edição do evento Next Level Week proporcionado pela empresa Rocketseat. Baseou-se em um layout elaborado no Figma.

O sistema, desenvolvido em TypeScript, é composto de um servidor HTTP Node, um site em React e um aplicativo móvel em React Native.

A opção por essas ferramentas foi realizada pela Rocketseat por acreditarem formar um conjunto de tecnologias poderoso ao permitir desenvolver desde o Back-End até o aplicativo móvel em uma só linguagem: o JavaScript. A escolha por TypeScript, um superset do JavaScript, foi realizada por acreditar trazer um aumento de confiabilidade de código.

Conceito do projeto

O Spacetime é um sistema para recordação de memórias.

Tanto na versão web quanto na versão mobile, o usuário se cadastra no sistema utilizando login social com GitHub. Após se autenticar, o usuário pode adicionar textos e fotos a uma linha do tempo dedicada a acontecimentos marcantes da sua vida.

Página de gerenciamento das ocorrências da ONG

Principais tecnologias utilizadas

O sistema foi desenvolvido em JavaScript. É composto de 3 partes:

Alguns pontos a destacar:

  • Cada aplicação possui ESLint configurado para padronização de código
  • A autenticação do usuário baseia-se em login social com GitHub OAuth e persistência da sessão com JWT
  • Validação de dados enviados ao servidor HTTP através da biblioteca Zod
  • A hospedagem de imagens de avatar de usuário é realizada no ImgBB
  • Seleção e upload de imagem armazenada no smartphone do usuário através da biblioteca Expo Image Picker

Se desejar explorar as rotas do servidor HTTP Node desenvolvido para esse sistema, poderá fazer isso através do Insomnia.

Run in Insomnia}

Instalação local

Passos para atingir isso podem ser conferidos neste arquivo.

Créditos

Credito a elaboração do modelo do banner deste documento e do banner social ao autor desconhecido desta postagem no site Mckups. Foi adaptado por mim de acordo com as características deste projeto.

Licença

Este projeto está sob a licença MIT. Para maiores detalhes acesse o arquivo de licença.