New

Just launched: Vueblocks, a brand-new search engine for Vue packages! Explore Vueblocks →

gacela-project/gacela

Gacela helps you separate your project into modules
258,397 133
Install
composer require gacela-project/gacela
Latest Version:2.8.0
PHP:>=8.3
License:MIT
Last Updated:Oct 30, 2026
Links: GitHub  ·  Packagist
Maintainer: Chemaclass

Gacela logo

GitHub Build Status Packagist Downloads Psalm Type-coverage Status Mutation testing badge MIT Software License

Gacela — build modular PHP applications

Gacela normalizes module boundaries so parts of your application communicate through a single entry point, without leaking internals.

Each module is built from four pillars — only the first two are required:

  • Facade — public API, the only way in
  • Factory — creates internal services
  • Provider — wires external dependencies (optional)
  • Config — reads project config (optional)

Installation

composer require gacela-project/gacela

Requires PHP 8.3+. Coming from 1.x? See UPGRADE.md.

Module structure

app/
├── gacela.php
├── config/
└── src/
    └── Blog/
        ├── BlogFacade.php
        ├── BlogFactory.php
        ├── BlogProvider.php
        └── BlogConfig.php

That is what make:module App/Blog below writes. Pass --short-name for Facade.php instead of BlogFacade.php — both resolve; the prefix is the default because it survives being read out of context.

CLI

vendor/bin/gacela init                  # scaffold gacela.php
vendor/bin/gacela make:module App/Blog  # scaffold a module
vendor/bin/gacela                       # every command

Modules can be inspected, validated and prepared for production — see CLI commands.

Documentation

Start with getting started, then getting a dependency — the one that answers "how do I reach that from here". docs/ is the full index; the rest:

Contributing

Report issues, share ideas, or open a pull request.


Inspired by Spryker.

Related Packages

hidejec/liquido-orm

LiquidoORM Framework Developed by Team Liquido(Inspired by Laravel Eloquent ORM)

24 7
marvision-laravel-admin/admin-zero

Marvision Laravel Admin Back-end

31 0
claz/wishi

An agnostic package to get different countries, states and counties.

27 19
coduxe/modular-laravel

Laravel modular friendly

22 0
ideamostuweb/lumina-framework

Lumina - A simple and reusable PHP framework.

12 0

Version History

Version Released PHP License
2.8.0 >=8.3 MIT
2.7.1 >=8.3 MIT
2.7.0 >=8.3 MIT
2.6.2 >=8.3 MIT
2.6.1 >=8.3 MIT