sfelix-martins/laravel-robust

Laravel Project with many tools pre installed and pre-set to build Robust APIs

v1.2.1 2017-09-27 22:21 UTC

This package is auto-updated.

Last update: 2024-04-15 15:11:53 UTC


README

Build Status StyleCI Scrutinizer Code Quality

Laravel Project with many tools preinstalled and pre-set to build Robust APIs

Features

  • Register Users
  • OAuth 2 Authentication (Default and Facebook)
  • Reset Passwords
    • You can resets password on browser using routes:
      • GET : /password/reset to show link request form
      • POST : /password/email to send reset link email
      • GET : /password/reset/{token} to show reset form
      • POST : /password/reset to reset password
    • Or using the API endpoints
  • Confirm Account

Endpoints

  • POST: /v1/users - Create users
  • POST: /v1/oauth/token - Default login and Facebook Login
  • GET : /v1/users/{id} - Get one user
  • POST: /v1/password/email - Sends password reset emails
  • POST: /v1/password/reset - Resets Passwords
  • GET : /v1/account/verify/{token} - Confirm email

Events

  • Illuminate\Auth\Events\Registered when user is registered
  • Illuminate\Auth\Events\PasswordReset when resets password

More details on Docs

Used Packages

Installing

  • Create laravel-robust project
$ composer create-project sfelix-martins/laravel-robust $YOUR_APP
  • Enter in the project folder:
$ cd $YOUR_APP
  • Use the stable version. Go to releases and checkout on latest version. For example:
$ git checkout v1.1.0
  • Copy .env file and set your environment configs
$ cp .env.example .env
  • Install composer packages
$ composer install
  • Generate you app key
$ php artisan key:generate
  • Migrate database changes
$ php artisan module:migrate
$ php artisan migrate
  • Install Laravel Passport to get credentials
$ php artisan passport:install

Get the generate credentials to use on API authentication

  • You need start queue to send confirmation email correctly
$ php artisan queue:work

Or configure Supervisor to make this

Testing

  • Install npm dependencies and start automatic tests
$ npm install

$ npm run tdd