Antes de tudo, vale lembrar que se você quiser apenas acessar a plataforma para experimentá-la, você pode fazer isso através deste link.
Se deseja executar o projeto na sua máquina, você precisa, antes de tudo, instalar as seguintes ferramentas: Git, Node.js, Yarn. Caso queira alterar algum arquivo sugiro também que instale algum editor de texto, como o Visual Studio Code e o Sublime.
Após isso, clone o repositório na pasta de sua escolha utilizando o seguinte comando na linha de comando:
git clone https://github.com/marcel099/rs-nlw-12-spacetime
É necessário manter o servidor em execução através destes comandos para o correto funcionamento da plataforma. Para isso, comece instalando as dependências:
# Acesse a pasta do back-end a partir da pasta do repositório
$ cd server
# Instale as dependências de funcionamento
$ yarn
Em seguida, crie um banco de dados PostgreSQL antes de executar a aplicação. Aconselho que crie o banco de dados Postgre utilizando o software Docker, pois foi a forma utilizada na versão 2.0 do projeto. Anote suas credenciais de conexão ao banco.
Após, crie duas OAuth Apps nas configurações de desenvolvedor da sua conta no GitHub. Uma será para a aplicação Web e a outra será para a aplicação Mobile. Obtenha o Client ID e o Client Secret de cada uma e as anote.
Depois, crie sua conta no ImgBB e realize login. Obtenha sua chave de API e a anote.
Após realizar todas essas etapas, preencha as variáveis de ambiente presentes no arquivo .env.example
com as informações que você anotou nos passos anteriores.
É importante destacar que você usará essas credenciais de GitHub OAuth App ou para web, ou para mobile. Não é possível navegar na aplicação web e na aplicação mobile localmente ao mesmo tempo.
Por fim, rode o seguinte comando para executar a aplicação Back-End:
$ yarn dev
É necessário abrir outra linha de comando para executar estes comandos sem que a anterior seja fechada visto que as aplicações web e mobile consomem e manipulam dados da aplicação back-end.
# Acesse a pasta do front-end web a partir da pasta do repositório
$ cd web
# Instale as dependências
$ yarn
Antes de iniciar a aplicação, preencha as informações de variáveis de ambiente presentes no arquivo .env.example
. Você usará seu Client ID da sua OAuth App do GitHub dedicada à aplicação web.
# Inicie a aplicação Next
$ yarn start
Para executar a aplicação mobile:
# Acesse a pasta do front-end mobile a partir da pasta do repositório
$ cd mobile
# Instale as dependências
$ yarn
Antes de iniciar a aplicação, preencha as informações de variáveis de ambiente presentes no arquivo .env.example
. Você usará seu Client ID da sua OAuth App do GitHub dedicada à aplicação mobile.
# Inicie a aplicação React Native com Expo
$ yarn start
Após, você poderá acessar o aplicativo através do app Expo Go ao apontar a câmera do seu celular dentro desse app no QRCode que aparecerá na tela do terminal. Se não quiser utilizar outro dispositivo, o acesso pode ser feito utilizando emuladores Android ou iOS.