emsifa / graphit
PHP GraphQL Framework
dev-master
2018-05-11 11:51 UTC
Requires
- php: ^7.1
- nyholm/psr7: ^0.3.0
- rakit/console: ^v0.1
- webonyx/graphql-php: ^0.11.5
This package is auto-updated.
Last update: 2024-11-22 01:30:47 UTC
README
Graphit adalah 'framework' khusus untuk membuat aplikasi graphql. Tidak seperti framework PHP pada umumnya yang menyajikan RESTful routing, middleware, ORM, dsb. Graphit hanya memiliki 1 fungsi utama, yaitu mengeksekusi graphql query (gql). Untuk mengeksekusi gql tersebut, Graphit menggunakan library webonyx/graphql-php.
Seperti framework pada umumnya, Graphit dibuat bertujuan untuk:
- Easy to build.
- Easy to maintain.
Untuk tujuan tersebut, Graphit menghadirkan fitur-fitur sebagai berikut:
- Mempermudah definisi schema dengan graphql SDL.
MemaksaMembantu menciptakan struktur direktori yang lebih mudah dipahami.- AST caching untuk mempercepat performa aplikasi.
- Depencency Injection (DI) Container.
- Upload file mengikuti spesifikasi graphql-multipart-request-spec.
- Integrasi GraphiQL.
- Mudah di integrasikan ke beberapa framework PHP populer.
Instalasi
Untuk menginstall Graphit, silahkan buat direktori aplikasi baru. Kemudian jalankan perintah composer dibawah ini:
composer require emsifa/graphit:dev-master
Setup
On progress (lihat di folder example)
Konfigurasi
On progress (lihat di folder example)
TODOS
- Automatic build schema from
.graphql
file- Register Queries
- Register Mutations
- Register Types
- Register Enums
- Register Inputs
- Register Interfaces
- Register Unions
- Execute gql from HTTP
- GraphiQL integration
- AST caching
- Upload file support following this specs
- Framework Integrations
- Laravel
- Slim
- Silex
- Yii2
- Rakit