Skip to content

API Starter providing you everything to build a professional API with PHP on top of Laravel 5

License

Notifications You must be signed in to change notification settings

shyamsukhamit/Hello-API

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Hello API

forthebadge

The 'Hello World' of an API :)

Hello API is an API Starter providing you everything to build a professional API with PHP on top of Laravel 5.1.

Today everything needs an API (Mobile Apps, Websites, Internet of Things,...). And setting up an API from scratch takes a lot of time, even with the existence of the many great Packages and Tools.

Hello API is a project that gives you all the common functionalities of a professional modern API, to start building your own Application on top of it immediately. It uses the best framework, packages, tools and conventions. All configured to work together in a beautiful piece of code.

Content

Features

The Hello API comes with great features:

  • Token Based Authentication (with JWT "JSON Web Tokens").
  • API Throttling (Rate Limiting).
  • Supports CORS "Cross-Origin Resource Sharing".
  • Automatic Data Pagination (meta links to next and previous data).
  • Data Caching support (with auto clearing on Create, Update and Delete).
  • Easy and auto request input validation.
  • Useful Query Parameters support out of the box (orderBy, sortedBy, filter, include).
  • Auto API Documentation generator (using the API Doc JS).
  • Type-Casting JSON response with Transformers.
  • Full-text search support out of the box (search, searchFields).
  • Custom Tests Helpers for faster automated testing (using PHPUnit).
  • 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.
  • RESTful API (supporting all HTTP verbs).
  • Modular Software Architecture (Freestyle Architecture).
  • 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.

Technologies

Hello API is built with the latest & hottest Technologies:

  • PHP (Server-Side Scripting Language)
  • Laravel 5.1 LTS (Back-End Framework)
  • 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
    • Dingo API (A RESTful API package)
    • JWT (JSON Web Token Authentication)
    • CORS (Cross-Origin Resource Sharing headers support)
    • Repository (Repositories to abstract the database layer)
    • Guzzle (PHP HTTP client)
    • Predis (PHP client library for Redis)

Full Documentation

Hello API comes with a detailed documentation (wiki), to help you getting started and modifying the existing code.

##Comming Features

  • Authorization system (ACL), to control which consumer can access your API.
  • Admin Panel (For Users Management).
  • IP Restriction (to whitelist or blacklist IP's).
  • Request size limiting and response rate limiting.
  • Back-end generators (to generate Modules and components) for faster development.
  • Automatic Code and Data Backup.
  • Hidden real IDs from the response.
  • Support login with social networks (Facebook, Twitter, Github, Google).
  • A lot more cool stuff in mind, (never stop coding).

Suggest a feature by opening a new Issue with (Feature -) title here.

Contribution

Just do it. You are welcome :)

Credits

License

The MIT License (MIT).

About

API Starter providing you everything to build a professional API with PHP on top of Laravel 5

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 99.7%
  • ApacheConf 0.3%