• This repository has been archived on 16/Nov/2022
  • Stars
    star
    265
  • Rank 149,871 (Top 4 %)
  • Language
    PHP
  • License
    MIT License
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Laravel API starter kit collection using different structures.


A Laravel API starter kit collection using different structures.
Not maintained anymore

CI Build Status Build Status License

Screen Shot 2020-09-05 at 21 38 49

Screen Shot 2020-09-05 at 22 12 44

Screen Shot 2019-05-26 at 11 29 40

Screen Shot 2019-05-26 at 11 24 15

Not maintained anymore

Today Laravel has almost all these features natively, and I just use the standard skeleton/structure.

I would recommend you to use the standard structure too. Taylor too: https://twitter.com/taylorotwell/status/1590332496767586307

What is it

This is a starter kit for your next API using Laravel, implemented with more than one structure, all battle-tested with the same features listed below.

Features

  • 2FA
  • ACL
  • Anti Phishing Code on email
  • Audit
  • CORS
  • Device authorization
  • Etag
  • Horizon
  • Laravel 8.x, 7.x, 6.x, 5.8
  • Login
  • Login history
  • Multiple localizations, preconfigured with en_US and pt_BR
  • Password reset
  • Password must not be in one of the 4 million weak passwords
  • PHPCS PSR2, phpinsights and sonarqube analysis
  • Register
  • Swoole
  • Tests
  • Transactional events: Listen to events and send notifications only if the transaction is commited
  • uuid

Soon:

  • Background job example

Up and running

Environment: develop

The container used is created from Google Cloud Platform official php-docker + swoole and can be found here: https://github.com/ibrunotome/docker-laravel-appengine

The oficial php image from Google Cloud Platform is updated once in a lifetime so I decided to manage my own php images at http://github.com/ibrunotome/php

  • Set the .env variables, see .env.example that is already configured to point to pgsql and redis services
  • Run the container with docker-compose -f docker-compose.develop.yml up. Alternatively, if you have an older laptop, try running remotely with Blimp.
  • Enter into app container with docker exec -it default-structure-app bash
  • Run the migrations with php artisan migrate:fresh

And it's up and running :)

Environment: testing

The container with xdebug is in the Dockerfile.testing, you can get into this container using: docker-compose -f docker-compose.testing.yml up -d app and then:

  • Get into app container with docker exec -it default-structure-app-testing bash (off course, default-structure-app is for the default-structure)
  • Run tests with composer test
  • Run "lint" (phpcs) with composer lint
  • Run "lint and fix" (phpcbf) with composer lint:fix
  • Run phpcpd with composer phpcpd
  • Run php static analysis (level 5) with composer static:analysis
  • Run nunomaduro/phpinsights with php artisan insights

To see sonarqube analysis, simple run docker-compose -f docker-compose.sonarqube.yml up, the quality profile used is PSR-2.

Environment: production

See the contents of the .k8s folder :)

Email layout

screenshot 2019-02-07 08 26 51

Database structure

Screen Shot 2019-05-26 at 17 55 32

Routes

Screen Shot 2019-05-26 at 17 56 41

Author

ibrunotome
@ibrunotome

Contributors

crcms
@crcms
ejj
@ejj

More Repositories

1

udacity-blockchain-developer-nanodegree

The road so far on Udacity Blockchain Developer Nanodegree
JavaScript
73
star
2

docker-laravel-appengine

Laravel dockerized with official Google App Engine flexible php environment + swoole.
Dockerfile
63
star
3

php

Docker images for php
Dockerfile
6
star
4

Install-php7-with-pthreads-on-ubuntu

Install php7.0.8 with pthreads 3.1.6 on Ubuntu 16.04 LTS
Shell
5
star
5

macOS-switchblade

Script to install applications I most use, using brew and brew cask.
Vim Script
4
star
6

ticketbeast

Learning TDD using Laravel with Adam Wathan's course. This course can be found at https://course.testdrivenlaravel.com
PHP
3
star
7

gostack-bootcamp

Rocketseat Bootcamp of NodeJS, ReactJS and React Native
JavaScript
2
star
8

API-RESTFul-laravel

Projeto desenvolvido durante o curso Desenvolvimento de APIs RESTFul com Laravel, na School Of Net.
PHP
2
star
9

rebuilding-twitter-tailwindcss

Rebuilding Twitter with Tailwind CSS
PHP
2
star
10

RI-Modelo-Booleano

Implementação de busca no modelo booleano. Trabalho realizado no 7º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Recuperação da Informação (RI).
PHP
2
star
11

google2fa-laravel

The pragmarx/google2fa with the part that allow usage of in stateless APIs, using cache store instead session
PHP
1
star
12

grupos-uteis-no-telegram

Lista de grupos úteis no telegram.
1
star
13

curso-vue-js-2

Curso School Of Net - Vue.js 2.0
JavaScript
1
star
14

how-to-remix-run

TypeScript
1
star
15

AED-I-Algoritmos-de-Ordenacao

Análise e comparação de tempo, número de iterações e comparações entre 11 algoritmos de ordenação: BubbleSort, SelectionSort, InsertionSort, ShellSort, HeapSort, o IntroSort (H íbrido do QuickSort e InsertionSort) e mais cinco tipos diferentes de QuickSort. Trabalho realizado no 3º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Algoritmos e Estrutura de Dados I (AED I).
Pascal
1
star
16

Calculo-Integral-Numerica-Tabelada

Software capaz de calcular a integral numérica de uma função tabelada. Trabalho realizado no 3º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Cálculo Numérico.
C
1
star
17

Pesquisa-Operacional-Simplex

Criação do método simplex utilizando Python. Trabalho realizado no 8º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Pesquisa Operacional.
R
1
star
18

Maquina-de-Turing-Aritmetica

Implementação de uma Máquina de Turing aritmética para soma, subtração e multiplicação. Trabalho realizado no 8º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Teoria da Computação.
1
star
19

Webcrawler-com-Python

Criação de um webcrawler utilizando Python e armazenamento dos dados em um banco de dados MySQL. Trabalho realizado no 8º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Desenvolvimento Rápido em Linux.
Python
1
star
20

bitcoin-salary-calculator

Calculate your salary in bitcoin and other currencies.
JavaScript
1
star
21

Compilador-lex-yacc

Criação da parte léxica e sintática de um compilador para a linguagem Z utilizando lex e yacc. Trabalho realizado no 7º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Compiladores.
C
1
star
22

laravel-wallet-transaction-exception-example

Just to help in a bug report
PHP
1
star
23

Simulador-Maquina-Turing

Criação de um simulador de Máquina de Turing. Trabalho realizado no 8º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Teoria da Computação.
Python
1
star
24

RI-Modelo-Vetorial

Implementação de busca no modelo vetorial. Trabalho realizado no 7º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Recuperação da Informação (RI).
PHP
1
star
25

Sistema-Bancario-Distribuido

Criação de um sistema bancário distribuído utilizando middleware jgroups. Trabalho realizado no 7º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Sistemas Distribuídos.
Java
1
star
26

AED-II-Estudo-Altura-Arvore-Binaria

Fazendo um estudo empírico sobre comportamento da altura de uma árvore binária de busca na qual são feitas inserções e remoções de forma aleatória e implementando uma aplicação que identifique erros ortográficos num arquivo texto. Trabalho realizado no 4º período de Ciência da Computação no Instituto Federal de Minas Gerais (IFMG) - Campus Formiga para a disciplina de Algoritmos e Estrutura de Dados II (AED II).
C
1
star