Projects
CME is made up of a number sub-systems that come together to provide users with its full capability and as a developer you can choose to contribute to any of these systems discussed below:
CME Website
This is the website of CME that provides information about the CME the product. It is where this documentation is hosted. Here you can contribute as an author, designer. Most of the website is hosted on github and powered by Jekyll.
CME Web App
The web app is the main system - built with laravel v4.2. It serves as the backend for creating and managing campaigns. Check out the demo to have an idea of what it is.
CME API
With third party integration in mind, CME also has an API which allows others to communicate with any CME instance and perform common tasks on it. The API is built with the Slim framework
More technical information can be found here
CME Kernel
This is the heart of the project. It provides all the core functionality of CME and encapsulates all the juicy business logic.
CME Data
This is a repository of all of CME data types. To enforce certain data structure across the project, we use this set of objects
CME SDK
The SDK is currently only available in PHP but we welcome more development in other languages. The SDK allows for third party integration. Basically it’s a wrapper around the API that exposes a set of methods that make it easier to work with the API.
Commander
Commander is a simple tool designed to be light so that it is quick and easy to deploy. It’s main purpose is to send emails from the message queue. It’s commonly deployed to an EC2 instance and run from there to take full advantage of AWS free tier.
NOTE: Commander requires access to your CME database.