PHPackages                             develings/api-x - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. develings/api-x

ActiveLibrary[API Development](/categories/api)

develings/api-x
===============

Create a full-fledged API using a simple json file.

0.0.2(4y ago)1577[2 PRs](https://github.com/develings/api-x/pulls)MITPHPPHP ^8.0.2

Since Dec 8Pushed 3y ago2 watchersCompare

[ Source](https://github.com/develings/api-x)[ Packagist](https://packagist.org/packages/develings/api-x)[ RSS](/packages/develings-api-x/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (5)Versions (5)Used By (0)

API X (Work in progress)
========================

[](#api-x-work-in-progress)

[![Logo](logo.png)](logo.png)

[![Build Status](https://github.com/develings/api-x/workflows/tests/badge.svg)](https://github.com/develings/api-x/actions)[![Total Downloads](https://camo.githubusercontent.com/82818f6e2b1f89f8cd24b059a272dd95602d8c6306fd75ebce4fb4e39941479a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f646576656c696e67732f6170692d78)](https://packagist.org/packages/develings/api-x)[![Latest Stable Version](https://camo.githubusercontent.com/63763afb1179dc70e2821a48e01b05b5f01e7caf6975eab37804a04468d48501/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f646576656c696e67732f6170692d78)](https://packagist.org/packages/develings/api-x)[![License](https://camo.githubusercontent.com/6998c03caf6b122c62a2862c1b866be6f9c8de4d1b9b749550193b52cbc4d6d5/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f646576656c696e67732f6170692d78)](https://packagist.org/packages/develings/api-x)

### BE CAREFUL

[](#be-careful)

This package is still under heavy development and may contain breaking changes with every update.

### About

[](#about)

Create a full-fledged API only using a simple JSON file.

#### Search

[](#search)

Search should be easy

```
{ "name": "string|search:like" },
{ "description": "string|search:like_left" },
{ "description": "string|search:like_right" },
{ "uuid": "string|search:equal" },
```

#### Simple example

[](#simple-example)

```
{
    "name": "App",
    "version": "1.0",
    "description": "A demo application using the ApiX library",
    "endpoint": "/api/v1.0/",
    "authentication": "token:users,api_key",
    "events": true,
    "db": {
        "driver": "mariadb",
        "prefix": "app_test_"
    },
    "servers": [
        {
            "url": "http://app.test"
        },
        {
            "url": "https://someId.execute-api.eu-central-1.amazonaws.com/dev"
        }
    ],
    "api": [
        {
            "name": "device",
            "timestamps": true,
            "soft_deletes": true,
            "identifier": "uuid",
            "sort_key": "created_at",
            "per_page": 10,
            "fields": {
                "uuid": "string|primary|default:uuid",
                "device_id": "string:64|unique",
                "last_active_at": "datetime|index|on_update_fill:datetime",
                "device_user_id": "uuid|nullable",
                "api_key": "string|default:alphanumeric,36"
            },
            "relations": {
                "user": "belongsTo:users"
            }
        }
    ]
}
```

We currently support the normal laravel DB drivers.

This definition will create an OpenAPI specification route plus a migration for the device table including the endpoints for it.

All that needs to be done is to instantiate the API class.

Install
-------

[](#install)

You just need to require the composer package, and you're done.

```
composer install develings/api-x
```

Create api.json in the root of your project.

```
php artisan api:make
```

Instantiate
-----------

[](#instantiate)

```
// add this to config/app.php
'providers' => [
    ...
    \ApiX\ApiXServiceProvider::class,
],

// add the route (e.g. routes/web.php)
$api = new ApiX\ApiX(base_path('api.json'));
$api->setRoutes();
```

Fake data
---------

[](#fake-data)

Since we have all the definition we need from the **api.json** file, it's also possible to populate test data using the **faker** package. **Coming soon**

Planned features
----------------

[](#planned-features)

Use route syntax to fetch code from PHP instead of api.json. Eg:

```
{
    "api": [
        "@App\\ApiX\\DeviceAPI",
        "@App\\ApiX\\UserAPI:getDefinition",
        {
            "name": "company",
            "fields": "@App\\ApiX\\CompanyAPI:getFields"
        }
    ]
}
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~71 days

Total

2

Last Release

1551d ago

PHP version history (2 changes)0.0.1PHP ^7.3|^8.0

0.0.2PHP ^8.0.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/8ba6f839c8e26089334c3c555574a5ff49cf3da0743e9bfb0fbef90dd6b7b32b?d=identicon)[envomer](/maintainers/envomer)

---

Top Contributors

[![envomer](https://avatars.githubusercontent.com/u/5601749?v=4)](https://github.com/envomer "envomer (86 commits)")

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/develings-api-x/health.svg)

```
[![Health](https://phpackages.com/badges/develings-api-x/health.svg)](https://phpackages.com/packages/develings-api-x)
```

###  Alternatives

[darkaonline/l5-swagger

OpenApi or Swagger integration to Laravel

2.9k34.0M112](/packages/darkaonline-l5-swagger)[echolabsdev/prism

A powerful Laravel package for integrating Large Language Models (LLMs) into your applications.

2.3k388.3k10](/packages/echolabsdev-prism)[sburina/laravel-whmcs-up

WHMCS API client and user provider for Laravel

271.3k](/packages/sburina-laravel-whmcs-up)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
