OLW é um projeto desenvolvido em Laravel 11 com o uso de Docker através do Laravel Sail. Este projeto inclui uma API que sugere qual cerveja combina melhor com determinados tipos de comida. Além disso, o projeto utiliza Laravel Breeze para autenticação, MySQL como banco de dados, Redis para caching, Mailpit para envio de e-mails, MinIO para armazenamento de arquivos, Vue.js para a interface do usuário e Tailwind CSS para estilização.
- Laravel 11: Framework PHP para desenvolvimento web.
- Docker & Laravel Sail: Ambiente de desenvolvimento containerizado.
- MySQL: Banco de dados relacional.
- Redis: Cache em memória.
- Mailpit: Ferramenta para teste de envio de e-mails.
- MinIO: Armazenamento de objetos compatível com S3.
- Vue.js: Framework JavaScript para construção de interfaces de usuário.
- Tailwind CSS: Framework CSS utilitário para estilização.
- Docker e Docker Compose instalados na máquina.
-
Clone o repositório do projeto:
git clone https://github.com/seu-usuario/olw.git cd olw
-
Copie o arquivo
.env.example
para.env
e configure as variáveis de ambiente conforme necessário:cp .env.example .env
-
Suba os containers Docker com Laravel Sail:
./vendor/bin/sail up -d
-
Instale as dependências do projeto:
./vendor/bin/sail composer install
-
Execute as migrações do banco de dados:
./vendor/bin/sail artisan migrate
-
Instale as dependências do frontend:
./vendor/bin/sail npm install
-
Compile os assets do frontend:
./vendor/bin/sail npm run dev
O projeto utiliza Laravel Breeze para fornecer um sistema de autenticação simples e seguro. Após configurar o projeto, você pode acessar as rotas de registro e login fornecidas pelo Breeze.
A API principal do projeto sugere combinações de cervejas com diferentes tipos de comida. Você pode acessar a documentação da API para mais detalhes sobre os endpoints disponíveis e como utilizá-los.
Para iniciar o servidor de desenvolvimento, utilize o seguinte comando:
./vendor/bin/sail up
Isso iniciará todos os containers necessários, incluindo o servidor web, banco de dados, Redis, MinIO, e Mailpit.
app/
: Contém os controladores, modelos e outros arquivos principais do Laravel.database/
: Arquivos de migração e seeds do banco de dados.public/
: Diretório público do projeto.resources/
: Views Blade, arquivos Vue.js e outros recursos front-end.routes/
: Arquivos de definição de rotas.storage/
: Arquivos de armazenamento local.tests/
: Testes unitários e de integração.
- Faça um fork do projeto.
- Crie uma branch para sua feature/bugfix (
git checkout -b feature/nova-feature
). - Faça commit das suas alterações (
git commit -am 'Adiciona nova feature'
). - Faça push para a branch (
git push origin feature/nova-feature
). - Crie um novo Pull Request.
Este projeto está licenciado sob a MIT License.
Para mais informações e documentação detalhada, consulte os repositórios e documentação oficial das tecnologias utilizadas.