larapie/larapie

The Larapie Framework.

Installs: 12

Dependents: 0

Suggesters: 0

Security: 0

Stars: 12

Watchers: 4

Forks: 3

Open Issues: 21

Type:project

0.2.1 2019-07-08 19:51 UTC

README

68747470733a2f2f6c61726176656c2e636f6d2f6173736574732f696d672f636f6d706f6e656e74732f6c6f676f2d6c61726176656c2e737667

Build Status Code Coverage Code Quality StyleCI License

Larapie

Installation:
composer create-project larapie/larapie
composer install
php artisan larapie:install

Open the .env file and enter your database details then run:

php artisan db:reset --seed
WARNING:

This repository is currently in alpha. Heavy development is going on and things are possibly going to break. If you want to use it please tag use a tagged release instead of the master since these are tested and should be working. For now please do not use this in production environments. An announcement will be made when it is considered production ready.

What is Larapie

Larapie is a framework for easily building scalable and testable api's with laravel & PHP.

It is heavily inspired on apiato wich is unfortunately abandoned and not up to date anymore at the moment. We will reuse a lot of documentation from apiato throughout this project to speed up the writing. Larapie aims to be more intuitive, performant and maintainable than apiato. It is designed to help you build scalable API's faster, by providing tools and functionalities that facilitates the development of any API-Centric App.

Why!? Because setting up a solid API from scratch is time consuming (and of course, time is money!). Larapie gives you the core features of robust API's fully documented, for free; so you can focus on writing your business logic, thus deliver faster to your clients.

Requirements

  • Php >= 7.2
  • PHP Extensions: OpenSSL, PDO, Mbstring, Tokenizer
  • Composer
  • Webserver (nginx, apache, lightspeed, ..)
  • Database (mysql, mariadb, postgres, sqllite)
Optional:
  • In Memory & Queue Database (Redis)

Features

  • Auto registration of resources (commands, configs, event listeners, module schedules, factories, policies, observers, routes, ..).
  • Action (validation, authorization & business logic) driven design.
  • Modular structure (splitted in foundation, modules & packages)
  • Seperate Api domain or route.
  • Api versioning.
  • Code generator (very early stages)
  • Preconfigured usefull Packages (Cors, Horizon, Idehelper, Sentry, Telescope)
  • Authorization (permissions & roles)
  • Authentication (Auth0)
  • Transformers. Laravel api resources with fractal functionality. (larapie/transformer)
  • Repositories. (very early stages)
  • Guards. Fluent reusable objects to throw exceptions based on conditions. (larapie/guard)