Skip to content
Backend do Caronaê, app open-source de caronas usado por mais de 15 mil alunos da UFRJ
PHP JavaScript HTML CSS Shell Python Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
app
bootstrap
config
database
docker
load_tests
public
resources
routes
scripts
storage
tests
.dockerignore
.gitignore
.styleci.yml
LICENSE
Makefile
README.md
artisan
composer.json
composer.lock
phpunit.xml
server.php

README.md

Caronaê - Backend

CircleCI StyleCI

Backend do Caronaê, baseado no Laravel. O backend é composto por uma API REST usada pelos apps e pela área administrativa, usada internamente.

O Caronaê é um sistema de código aberto, seguro e prático de caronas compartilhadas, criado com o objetivo de ser replicado em diferentes instituições e feito exclusivamente para a comunidade acadêmica das instituições integrantes da Rede Caronaê. Para conhecer mais sobre o projeto, visite nosso site.

Instalação

O backend do Caronaê executa em um ambiente com PHP 7, PostgreSQL e Redis.

O jeito mais fácil de executar este projeto localmente é utilizando nossas imagens Docker. Você não precisa ter nada instalado na sua máquina além do Docker e Docker Compose.

No diretório docker há uma configuração do Docker Compose. Para rodar o projeto junto com todas as dependências necessárias, execute:

cd docker
docker-compose up

Você pode criar uma terminal dentro do container do caronae-backend através do comando abaixo:

docker exec -it caronae-backend sh

Populando o banco de dados

Quando você executa o projeto pela primeira vez, o banco de dados está vazio. Porém há um seed que popula um banco de dados com dados aleatórios, perfeito para desenvolvimento local. Para usá-lo, execute o comando abaixo:

Importante: o comando abaixo apaga todos os dados existentes antes de inserir os novos dados.

docker exec -it caronae-backend php artisan migrate:refresh --seed

Pronto! Agora você já pode fazer login na área administrativa utilizando o usuário padrão.

Usando a API através do Postman

Nós recomendamos usar o aplicativo Postman pra testar as chamadas da API.

Como as rotas da API são protegidas apenas para usuários logados, você precisa gerar um token JWT pra se autenticar na API. Você pode gerar um token pela área administrativa clicando em API tokens.

Uma vez gerado o token, você pode configurá-lo na aba Authorization do Postman. No campo Type, selecione 'Bearer Token'. No campo Token, insira o token gerado na área administrativa.

Testes

Este projeto possui alguns testes unitários e de integração, que ficam dentro da pasta tests. Eles verificam o comportamento da aplicação a fim de evitar que mudanças no código quebrem alguma funcionalidade existente. Para ler mais sobre testes no Laravel, consulte a documentação oficial.

Existe um arquivo de configuração do Docker Compose feito só pra poder rodar os testes. Você pode executá-lo da sua máquina usando o comando abaixo de dentro da pasta docker:

docker-compose -f docker-compose.test.yml up --build --exit-code-from caronae-backend-tests
You can’t perform that action at this time.