PHPackages                             ezamlinux/rpg - 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. ezamlinux/rpg

ActiveLibrary

ezamlinux/rpg
=============

RPG

327PHP

Since Dec 5Pushed 5y ago1 watchersCompare

[ Source](https://github.com/ezamlinux/laravel-rpg)[ Packagist](https://packagist.org/packages/ezamlinux/rpg)[ RSS](/packages/ezamlinux-rpg/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependenciesVersions (2)Used By (0)

laravel-rpg
===========

[](#laravel-rpg)

GraphQL Api for RPG purpose ( Players, Zones, Monsters &amp; Pets, Recipes ... )

Developed for my entertainment, I personnally use it with my Node's Discord Bot on my Docker stack and for learning Gridsome.

I develop it by reproducing the features available in the video games that I appreciate (Golden Sun, Pokemon, FF, Onimusha Tactics ...).

Without the real wish to recreate a game, the mechanics and the data structures fascinate me more than the result. If it works it's cool but I prefer to imagine the unfinished data flows ...

tested with MySQL, MariaDB and PostgreSQL

Install
-------

[](#install)

`composer require ezamlinux/rpg`

Use `php 7.4` and `Laravel ^8`

Use
===

[](#use)

(required) publish the graphQL Schema: `php artisan vendor:publish --tag="rpg-graphql"`

Add - `mix.js('vendor/ezamlinux/rpg/resources/assets/js/rpg.js', 'public/js')` in your webpack.mix file ( I haven't found a better way for the moment )

Default access by `/rpg` prefix

If you extends Model, publish the config file :

`php artisan vendor:publish --tag="rpg-config"`

and edit the 'models' and / or 'morphMaps' array (edit the graphQL schema too)

Commands available
------------------

[](#commands-available)

For database initialisation : `php artisan migrate`

For dummy insertion : `php artisan rpg:inject`

DATABASE ERD
------------

[](#database-erd)

Generated with [Laravel ER Diagram Generator](https://github.com/beyondcode/laravel-er-diagram-generator)

[![Laravel ERD](resources/graph.png)](resources/graph.png)

Note
----

[](#note)

Think about using `Accept: application/json` Header to prevent troubleshoot during api usecase

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity33

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/17520653?v=4)[eZam](/maintainers/ezamlinux)[@ezamlinux](https://github.com/ezamlinux)

---

Top Contributors

[![ezamlinux](https://avatars.githubusercontent.com/u/17520653?v=4)](https://github.com/ezamlinux "ezamlinux (20 commits)")

### Embed Badge

![Health badge](/badges/ezamlinux-rpg/health.svg)

```
[![Health](https://phpackages.com/badges/ezamlinux-rpg/health.svg)](https://phpackages.com/packages/ezamlinux-rpg)
```

PHPackages © 2026

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