Fork me on GitHub

Colony Framework

The Colony Framework is an open source plugin framework specification. Implementations of the specification offer a runtime component model, that allows for plugins to be installed, started, stopped, updated and uninstalled without requiring the application container to be stopped. The specification relies heavily on the Inversion of control principle, in order to make it easier for application components to discover and interact with each other.

Colony aims to eliminate the complexity typically associated with the creation of modular applications, through a simplified unified model for component development. Practical applications can range from modular enterprise software to application mashing.

Quick start

Handicraft

Virtualenv

Docker

To actually do something useful look into How to Establish your Colony in 3 Easy Steps

Installation

For development

For production

Usage

Most of the colony operation are run through the cpm command:

Testing

In order to run the complete set of available tests for the deployment use either colony test or MODE=test colony and Colony Manager will boot directly to unit testing and exit in error in case at least one test fails.

Features

And remember this is just the base runtime, to understand the kind of things you can do with Colony, browse the Colony Plugins repository.

Contributing

Although Colony is still in an early stage we're welcoming help for all kinds of work. The best ways to get involved:

  1. Join the mailing list.
  2. Send pull requests for bug fixes or new features and improvements.
  3. Help make the docs better.

Extensions

To find Python native extension required for some of the plugins used the following sites:

Project information

License

Colony is an open-source project currently licensed under the Apache License, Version 2.0.

Build Automation

Build Status Build Status GitHub Coverage Status PyPi Status License