Skip to content

Projeto Laravel que consome API de cervejas desenvolvido durante o evento Open Laravel Week do Beer and Code

Notifications You must be signed in to change notification settings

DaniPoletto/open-laravel-week

Repository files navigation

Open Laravel Week

Capa

Evento

O open lavravel week é um evento promovido pelo canal Beer And Code. Consiste em uma semana de lives onde é desenvolvido um projeto em Laravel.

Projeto

O projeto desenvolvido foi um sistema em Laravel para consumir uma API de um catálogo de cervejas (PunkAPI).

Funcionalidades

  • Trazer todas as opções de cerveja com filtros
  • Exportação em excel
  • Enviar arquivo excel exportado por e-mail
  • Utilizar jobs para tarefas assincronas
  • Utilização do front-end pronto disponibilizado

Demo

Tecnologias utilizadas

  • PHP 7.4
  • Laravel 8
  • PunkApi
  • Laravel Excel
  • Faker Restaurant
  • Mailtrap
  • Breeze
  • Vue.js
  • MySql

Inicialização

1 - Baixar os arquivos do repositório utilizando git clone

2 - Instalar as dependências do projeto componser install

3 - Editar o arquivo .env com as credencias do banco de dados

4 - Rodar as migrations

php artisan migrate

5 - Rodar seeder para criar usuário teste

php artisan db:seed --class=AdminUserSeeder

5 - Subir o servidor

php artisan serve

PunkApi

Api de cervejas.

https://punkapi.com/

Documentação da versão utilizada:

https://punkapi.com/documentation/v2

Laravel Excel

Pacote para exportação em excel.

https://laravel-excel.com/

Instalação

composer require maatwebsite/excel

Criar arquivo para exportação

php artisan make:export BeerExport

Faker Restaurant

Biblioteca para gerar opções de comida e bebida.

https://fakerphp.github.io/third-party/

https://github.com/jzonta/FakerRestaurant

Instalação

composer require jzonta/faker-restaurant

Mailtrap

Ferramenta de testes com e-mail:

https://mailtrap.io/

Tinker

É um REPL (loop de leitura-avaliação-impressão). O REPL permite que os usuários interajam com o aplicativo por meio da linha de comando. É comumente usado para interação com o Eloquent ORM, trabalhos, eventos e muito mais.

php artisan tinker

Breeze com Vue.js

Instalação

  • Passo 1:
composer require laravel/breeze:1.9.2
  • Passo 2:
php artisan breeze:install vue
  • Passo 3:
npm install
  • Passo 4:
npm run dev
  • Passo 5:
php artisan migrate

Resolução de problemas com laravel mix:

No arquivo package.json alterar a versão:

        "laravel-mix": "^6.0.0",

E os comandos utilizados:

    "scripts": {
        "dev": "npm run development",
        "development": "mix",
        "watch": "mix watch",
        "watch-poll": "mix watch -- --watch-options-poll=1000",
        "hot": "mix watch --hot",
        "prod": "npm run production",
        "production": "mix --production"
    },

Resolução de problemas ao rodar as migrations:

No arquivo /app/Providers/AppServiceProvider.php no método boot acrescentar:

Schema::defaultStringLength(191);

Não esquecer de importar a classe Schema

Criar controller

php artisan make:controller BeerController

Criar request

php artisan make:request BeerRequest

Criar model, controller e migration

php artisan make:model Export -mr

Criar uma factory

php artisan make:factory MealFactory

Criar um seeder

php artisan make:seed MealSeeder

Limpar banco e apagar seeder

php artisan migrate:fresh --seed

Criar classe pra envio de e-mail

php artisan make:mail ExportEmail

Criar Job

php artisan make:job ExportJob

Rodar todos os jobs que ficaram na fila

php artisan queue:work

About

Projeto Laravel que consome API de cervejas desenvolvido durante o evento Open Laravel Week do Beer and Code

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy