Servidor

O servidor é composto por uma aplicação Django e um banco de dados relacional PostgreSQL. Ambas essas tecnologias são de código aberto, o que significa que podem ser usadas livremente, dentro das estipulações de suas respectivas licenças. O papel do servidor é fornecer pontos de acesso em que uma resposta pode ser obtida para uma determinada requisição. Esses pontos de acesso são abertos para usuários autorizados, sendo que a autenticação é feita através de token de identificação fornecido pelo serviço de autenticação do Firebase. Quando um usuário não autenticado tenta fazer uso de um ponto de acesso, a requisição é bloqueada.

Modelagem

De forma geral, são necessárias tabelas para armazenar as informações sobre os usuários, seus veículos e as caronas oferecidas na plataforma. Desta maneira, foram projetadas cinco tabelas a fim de cumprir com as principais características do aplicativo e armazenam de forma coerente e intuitiva os dados.

Hospedagem

O servidor é hospedado no serviço de hospedagem em nuvem Railway, o que permite acessá-lo de qualquer rede conectada à internet. Dessa forma, os usuários podem utilizar o aplicativo para se comunicar com o servidor tanto com redes WiFi como com redes móveis.

Repositório do Projeto

Link para o repositório do backend do projeto: