honeylex/honeylex

Honeybee CQRS & ES integration with the Silex framework.

Installs: 179

Dependents: 1

Suggesters: 0

Security: 0

Stars: 7

Watchers: 6

Forks: 2

Open Issues: 8

Type:project

dev-master 2017-04-02 21:47 UTC

This package is not auto-updated.

Last update: 2024-04-27 16:58:25 UTC


README

Project template for building rapidly scalable applications based on the integration of the Honeybee CQRS & ES framework with the Silex micro framework based on Symfony components.

Code Climate Dependency Status

Alternative Honeybee Integrations

Installation

Docker

You can have Honeylex running very quickly with Docker and Composer.

If you do not already have Docker, first install it then create a machine with Virtualbox if required.

Bring up the Honeylex project on Docker as follows:

git clone git@github.com:honeylex/honeylex.git your-project
cd your-project
composer install --ignore-platform-reqs
# don't forget to connect your shell with `eval $(docker-machine env default)`
composer docker:up

Now you can run commands to setup the project:

composer honeylex project:configure
composer honeylex migrate:up

Once containers are running your project will be ready and provisioned!

Run docker-machine ip default to find the IP (typically http://192.168.99.100)

You can add application secrets in the var/secrets folder of your docker machine. The .env and var/docker/docker-compose.yml files also contain additional global project environment and secrets configuration.

The following docker commands are available via composer from your host machine:

composer docker:up     # create and start containers
composer docker:down   # stop and remove containers
composer docker:start  # start previously stopped containers
composer docker:stop   # stop/suspend running containers
composer docker:prune  # remove dangling volumes and stopped containers

Console

Honeylex comes with a number of convenient tools to help project setup and maintenance. A complete list of commands can be found by running:

composer honeylex  # alias of docker-compose run --rm php_cli ./bin/honeylex

A useful set of commands are provided for managing the following system features:

  • Configuration
  • Crates (portable code context bundles)
  • Resources (entities such as aggregate roots & projections)
  • Migrations
  • Fixtures
  • Workers (long running asynchronous background processes)
  • Events (managing the event store)
  • Routing

Registered Silex service providers

The bootstrapped Silex app is configured with support for the following service providers:

Additional security services are provided in Hlx\Security crate:

Read the Providers documentation for more details about Silex Service Providers.

Questions?

Join us in building awesome scalable applications or ask questions here: