• Stars
    star
    181
  • Rank 212,110 (Top 5 %)
  • Language
    PHP
  • License
    MIT License
  • Created over 11 years ago
  • Updated over 6 years ago

Reviews

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

Repository Details

Slim Framework based simple helper to generate RESTful API's and applications, requires PHP 7.

KAPI: Doors for PHP - v1.0.0

Build Status

Slim Framework based simple helper to generate RESTful API's and applications, requires PHP 7.

KAPI means "door" in Turkish.

Creating a Project skeleton

git clone https://github.com/emir/kapi myproject
cd myproject
composer install

It will create an example project.

Edit Configuration

$EDITOR .env

Migrations

phinx migrate

Running the Project

cd myproject
php -S localhost:8080 -t public

That's all! :)

Getting Started

You should define your URLs in routes.php:

# src/routes.php
<?php

$urls = [
  ['get', '/books', 'BooksController::index', 'List all books.']
];

Create your models:

# src/Models/Book.php
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Book extends Model
{
    /**
     * @var array
     */
    protected $guarded = [];
}

Create your Controllers and methods:

# src/Controllers/BooksController.php
<?php

namespace App\Controllers;

use App\Models\Book;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Database\QueryException;
use Slim\Http\Request;
use Slim\Http\Response;

class BooksController extends AbstractController
{
    /**
     * @param Request $request
     * @param Response $response
     * @return Response
     */
    public function index(Request $request, Response $response): Response
    {
        $books = Book::all();
        
        return $response->withJson($books);
    }
}

Done!