PHPackages                             decodelabs/genesis - 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. [Framework](/categories/framework)
4. /
5. decodelabs/genesis

ActiveComposer-plugin[Framework](/categories/framework)

decodelabs/genesis
==================

Universal bootstrapping framework

v0.14.7(8mo ago)220.0k8MITPHPPHP ^8.4CI passing

Since Sep 29Pushed 5mo ago2 watchersCompare

[ Source](https://github.com/decodelabs/genesis)[ Packagist](https://packagist.org/packages/decodelabs/genesis)[ RSS](/packages/decodelabs-genesis/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (10)Dependencies (12)Versions (49)Used By (8)

Genesis
=======

[](#genesis)

[![PHP from Packagist](https://camo.githubusercontent.com/2c252cebde796035cc9fa3bd19ca96730619513551759e31d3d6aa3570861771/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6465636f64656c6162732f67656e657369733f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/genesis)[![Latest Version](https://camo.githubusercontent.com/09b62b2341c0ec8e4f5d289bfd3c5dba33998b0ffa667c5f7149dcc1e003b27c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6465636f64656c6162732f67656e657369732e7376673f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/genesis)[![Total Downloads](https://camo.githubusercontent.com/b57f4bc48bc0aa20f2c4ac86fe451be9d429a8d712aa7745617a78fc563ecf03/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6465636f64656c6162732f67656e657369732e7376673f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/genesis)[![GitHub Workflow Status](https://camo.githubusercontent.com/dd9441b835a2f0cdc93205ba4b4c0fa663dba6b63d0d8adcabeea49e81c5606e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6465636f64656c6162732f67656e657369732f696e746567726174652e796d6c3f6272616e63683d646576656c6f70)](https://github.com/decodelabs/genesis/actions/workflows/integrate.yml)[![PHPStan](https://camo.githubusercontent.com/e25c14ce011edabdd0fbd2e10415b41cc5d66ed11ef3e5b7edd074c5bdd35a2d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d656e61626c65642d3434434331312e7376673f6c6f6e6743616368653d74727565267374796c653d666c6174)](https://github.com/phpstan/phpstan)[![License](https://camo.githubusercontent.com/4ce7fa5d661070b2e2c648396ddb8292ca246d7c7b1eb74af847a6d5b2687ca1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6465636f64656c6162732f67656e657369733f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/genesis)

### Universal bootstrapping framework for PHP applications

[](#universal-bootstrapping-framework-for-php-applications)

Genesis provides everything you need to bootstrap your application at runtime. Take the guesswork out of how best to structure the lowest level code in your framework and app.

---

Installation
------------

[](#installation)

This package requires PHP 8.4 or higher.

Install via Composer:

```
composer require decodelabs/genesis
```

Usage
-----

[](#usage)

### Hub

[](#hub)

Genesis requires consumers of the library to implement a number of interfaces to represent important parts of the bootstrap process. With these classes in place, it is then able to provide a unified, dependable bootstrap process for all environments.

Most important is the `Hub` interface:

```
namespace DecodeLabs\Genesis;

use DecodeLabs\Genesis\Environment\Config as EnvConfig;
use DecodeLabs\Genesis\Build\Manifest as BuildManifest;
use DecodeLabs\Kingdom;

interface Hub
{
    public ?BuildManifest $buildManifest { get; }

    public function initializeLoaders(): void;
    public function loadBuild(): Build;
    public function loadEnvironmentConfig(): EnvConfig;
    public function initializePlatform(): void;
    public function loadKingdom(): Kingdom;
}
```

Bootstrapping
-------------

[](#bootstrapping)

`Genesis` now runs as a composer plugin, automatically generating an entry point for your application when composer updates.

You just need to add make sure you have set your composer `type` ('project' for a standalone app, 'library' for a library) and your `Hub` class to the `genesis.hub` extra key in your `composer.json` file:

```
{
    "extra": {
        "genesis": {
            "hub": "My\\Genesis\\Hub"
        }
    }
}
```

You can then point your HTTP server to rewite to `vendor/genesis.php` as your entry point. Genesis takes care of the rest.

Compiled builds
---------------

[](#compiled-builds)

Genesis supports an advanced build compilation process which can be used for isolating active runtime code from the source of your application. This is especially useful for legacy frameworks that can't easily be deployed using a third party automated deployment system.

Compiled builds are a complex topic due to the necessity of locating the correct build folder before loading *any* other code and needing to seamlessly deploy updates without unwittingly mixing different versions of libraries during execution.

Full details of [how to work with compiled builds can be found here](docs/builds.md).

Licensing
---------

[](#licensing)

Genesis is licensed under the MIT License. See [LICENSE](./LICENSE) for the full license text.

###  Health Score

47

—

FairBetter than 94% of packages

Maintenance67

Regular maintenance activity

Popularity26

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity67

Established project with proven stability

 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 ~23 days

Recently: every ~5 days

Total

47

Last Release

244d ago

PHP version history (3 changes)v0.1.0PHP ^8.0

v0.8.4PHP ^8.1

v0.10.0PHP ^8.4

### Community

Maintainers

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

---

Top Contributors

[![betterthanclay](https://avatars.githubusercontent.com/u/1273586?v=4)](https://github.com/betterthanclay "betterthanclay (207 commits)")

---

Tags

bootstrapkernelphpframeworkbootstrapentry

### Embed Badge

![Health badge](/badges/decodelabs-genesis/health.svg)

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

PHPackages © 2026

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