If you used Hello API before
21 June 2016you may need to check the branch 0.1.
Hello API is a Starter providing everything to build a modern API-Centric application, with PHP and Laravel Porto.
Laravel Porto is the implementation of the Porto Software Architectural Pattern in Laravel 5.1.
Hello API gives all the common functionalities of a modern API, to help building API-Centric Apps faster.
It uses the best framework, packages, tools and conventions. All configured to work together in a beautiful piece of code.
Today we’re living in a digital era, where almost everything is connected to the Internet.
Building cross-devices applications is becoming a must. And to do it, you need APIs (Application Programing Interfaces).
API's can serve anything and everything (Mobile Apps, Web Apps, Smart TVs, Smart Watches,...). As well as, it can be exposed to the world allowing developers to interact with your Application and help growing your business.
Setting up an API from scratch takes a lot of time, even with the existence of the many great Technologies and Tools. Hello API saves you time.
The Hello API comes with great features:
- Token Based Authentication (with JWT "JSON Web Tokens").
- API Throttling (Rate Limiting).
- User Endpoints (Login, Logout, Register, List, Update, Delete, Search).
- Functional Tests covering all the existing Endpoints (using PHPUnit).
- Data Caching support (with auto clearing on Create, Update and Delete).
- Useful Query Parameters support out of the box (orderBy, sortedBy, filter, include).
- Full-text search support out of the box (search, searchFields).
- Auto API Documentation generator (using the API Doc JS).
- Authorization system (ACL), to control which consumer can access your API.
- Supports CORS "Cross-Origin Resource Sharing".
- Localization support (multiple langauges via Content-Language header).
- Automatic Data Pagination (meta links to next and previous data).
- Easy and auto request input validation.
- Type-Casting JSON responses with Transformers.
- Custom Tests Helpers for faster automated testing (using PHPUnit).
- RESTful API (supporting all HTTP verbs).
- Optional support for the JSON API specification v1.0.
- Automatic dates conversion to ISO format in responses.
- Support for JSON with padding (JSONP).
- Scalable, Stateless and Distributable Application on the server.
- Fantastic Software Architectural Pattern (using C-SAP).
- Fully Object Oriented Code, implementing the best design patterns and coding techniques.
- Following the PSR-2/PSR-4 coding/autoloading standards.
- Runs on PHP 5.5.9+ (including PHP 7 and HHVM).
- Full detailed documentation.
- 100% customizable and Open Code.
Hello API is built with the latest & hottest Technologies:
- PHP (Server-Side Scripting Language)
- Laravel 5.1 LTS (Back-End Framework)
- Laravel CSAP (C-SAP with Laravel)
- PHPUnit (PHP Testing Framework)
- MySQL (RDBMS Database)
- Redis (Cache System)
- API Doc JS (API Documentation Generator)
- Laravel Homestead (Virtual Server Provisioning via Vagrant)
- Third Party Packages:
To get an overview of how the code is designed you MUST read about the Porto (Software Architectural Pattern).
Hello API is built on top of Laravel Porto (the implementation of Porto in Laravel), so you will need to refer to the Laravel Porto Documentation for everything. Below is the Hello API specific documentation:
- Intro
- General
- API
Just do it. You are welcome :)
| Authors | Follow on Twitter | Ask for Help | Hire |
|---|---|---|---|
| Mahmoud Zalt (Creator) | @Mahmoud_Zalt | mahmoud@zalt.me |
The MIT License (MIT).
