Skip to content

TallesVictor/Project-BallDontLie

Repository files navigation

🏀 Project-BallDontLie

📌 Sobre o Projeto

Project-BallDontLie é uma aplicação baseada em Laravel que gerencia informações sobre times, jogadores e jogos de basquete. O sistema permite operações CRUD e sincronização de dados via API externa.

🛠 Requisitos

  • Sistema operacional: Windows 11
  • Tecnologias utilizadas:
    • Laravel 10
    • PHP 8.2
    • MySQL
    • Laravel Sanctum
    • Docker

⚙️ Instalação

1. Instalando o Docker no Windows

Se ainda não possui o Docker instalado, siga os passos:

  • Baixe o Docker Desktop.
  • Instale e reinicie o sistema, caso necessário.
  • Certifique-se de que a virtualização está ativada no BIOS.

2. Configurando o ambiente Laravel

🔹 Obs 1: O Docker deve estar em execução no Windows antes de prosseguir. 🔹 Obs 2: Caso deseje conectar com o banco de dados, comum SGBD, utilze a porta 3307.

🚀 Subindo os containers com Docker

docker-compose up -d --build

📦 Instalando dependências do Laravel

docker exec -it php composer install

🔑 Gerando chave da aplicação

docker exec -it php php artisan key:generate

⚙️ Configurando .env

  - Copie o .env.example e renomeie para .env
  - No .env , altere as váriaveis para os valores abaixo 
  - DB_HOST=laravel_mysql
    DB_DATABASE=laravel
    DB_USERNAME=laravel
    DB_PASSWORD=secret

🗂 Criando as tabelas no banco de dados

docker exec -it php php artisan migrate

🗂 Populando o banco de dados

docker exec -it php php artisan db:seed

🔐 Credenciais de Acesso

Admin

{
    "email": "admin@example.com",
    "password": "password"
}

Usuário Padrão

{
    "email": "user@example.com",
    "password": "password"
}

🔄 Sincronizando Dados com a API

Execute os comandos abaixo para sincronizar os dados de times, jogadores e jogos:

docker exec -it php php artisan app:sync-teams-from-api
docker exec -it php php artisan app:sync-players-from-api
docker exec -it php php artisan app:sync-games-from-api

🧪 Executando Testes

Para rodar os testes, utilize:

vendor/bin/phpunit --filter PlayerServiceTest
vendor/bin/phpunit --filter PlayerControllerTest

🚀 Funcionalidades

  • ✅ Login
  • 🚪 Logout
  • 🏀 Criar jogadores
  • ✏️ Editar jogadores
  • 📋 Listar jogadores
  • 🗑 Apagar jogadores

💻 Tecnologias utilizadas:

  • PHPUnit - Testes Unitários e de Controller
  • Está sendo utilizado, DTOs, Contract, Repository, Resource, Factory...

📌 Documentação das Rotas

As rotas da API estão disponíveis no Postman.

🔗 Dica


📝 Dúvidas ou contribuições? Sinta-se à vontade para abrir uma issue ou enviar um PR! 🚀

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages