Download the PHP package decodelabs/genesis without Composer
On this page you can find all versions of the php package decodelabs/genesis. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download decodelabs/genesis
More information about decodelabs/genesis
Files in decodelabs/genesis
Informations about the package genesis
Genesis
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.
Get news and updates on the DecodeLabs blog.
Installation
Install via Composer:
Usage
Importing
Genesis uses Veneer to provide a unified frontage under DecodeLabs\Genesis
.
You can access all the primary functionality via this static frontage without compromising testing and dependency injection.
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:
The hub provides access to all of the critical information and structures needed to get the app running. Once instantiated, the hub can be accessed via the Genesis Veneer frontage:
Kernel
The Kernel is the executor of your app - the Hub sets it up and then the Kernel runs it.
Like the Hub, the Kernel can be accessed like so:
Build and environment
During the setup phase, the Hub will provide information and configuration for the Environment
and Build
objects:
Running the app
With the necessary interfaces in place, your entry file just requires the following:
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.
Licensing
Genesis is licensed under the MIT License. See LICENSE for the full license text.
All versions of genesis with dependencies
decodelabs/archetype Version ^0.3
decodelabs/atlas Version ^0.12
decodelabs/enumerable Version ^0.1.3
decodelabs/exceptional Version ^0.4
decodelabs/fluidity Version ^0.3.3
decodelabs/glitch-support Version ^0.4.1
decodelabs/pandora Version ^0.2.3
decodelabs/terminus Version ^0.10
decodelabs/veneer Version ^0.11.6