Product support

Get help in the plugin support forum.


  • Developer Tools

The plugin is a skeleton for building SaaS applications using OctoberCMS.

Its main purpose is to help developers with managing permissions to frontend pages and boost the development of SaaS applications.

See the documentation tab for more information about using Cumulus Core.


Install official Cumulus theme and you are ready to go :)

CumulusCore extensions

Cumulus Announcements Cumulus Announcements Icon Notify users of your system about things that concerns them, their clusters or their plans.

Cumulus Plus Cumulus Plus Icon Extend your Cumulus Core system with dashboard and settings pages within seconds.

These plugin(s) are required for the plugin:

The following themes use this plugin:


To fully understand the concept it is a good idea to watch the video here: http://cumulus.init.biz/videos.

Working with pages in Cumulus is based on four levels of testing user privileges:

  1. Public pages
  2. User is logged in (using Session component from RainLab.User)
  3. User can access to cluster's page (using Cumulus Guard)
  4. Cluster has access to the module (using Module Guard)

You can use the Guards on pages, but the best approach is to create the following layouts:

  • first one for public pages
  • second one with Session component from RainLab.UserPlus for all pages that requires a user to be signed in
  • third one with Session component and CumulusGuard component for all pages that requires a user to be signed in and to be assigned to a cluster
  • Fourth, fifth and so on with Session component, CumulusGuard component and a ModuleGuard component for all pages that requires a user to be signed in, assigned to a cluster and the privilege for a cluster to access the module.


Cumulus is using modules to separate functionality and access for front-end users. Cumulus core provides managing privileges, clusters and users while modules provide functionality. Cumulus modules are normal OctoberCMS plugins with extra functionality that helps communicating with Cumulus Core.

After installing Cumulus Core you can run command:

php artisan cumulus:createmodule namespace.modulename

For example:

php artisan cumulus:createmodule Initbiz.CumulusProducts

Module created in such way is basically a normal OctoberCMS plugin with one extra migration which binds it to Cumulus. After you have the plugin created describe it in plugins lang directory (it's name and description) and run:

php artisan plugin:refresh namespace.modulename

After that command completes, the module will be initially migrated and registered in Cumulus Core.

Testing Cumulus

Cumulus tests are written using Selenium 2, using Initbiz.selenium2tests plugin. If you want to test Cumulus then in tests/ directory you have a fixtures/themes directory where theme for testing is stored. Contribution is very welcomed :)


Added handling transactions on user register

Jul 06, 2018


!!! Updated repository interface. Temporarily removed validation. Refactored cluster repository + minor fixes

Jun 27, 2018


Fixed typo

Jun 25, 2018


!!! Changed method getClusterModulesName to getClusterModulesSlugs + optimized cluster repo

Jun 19, 2018


!!! Removed cumulusDashboard and cumulusSettings components. They have been moved to CumulusPlus extension

Jun 19, 2018


Fixed recurrent dependencies in repositories

Jun 11, 2018


Set event listeners priorities

Jun 11, 2018


First Cumulus extension - Cumulus Announcements: octobercms.com/plugin/initbiz-cumulusannouncements

May 31, 2018


Created plan repo and added some useful methods to existing ones

May 30, 2018


Cleanup modules creating and listing them in settings

May 27, 2018


Updated table initbiz_cumuluscore_modules -> added nullable description column

May 27, 2018


Added ClusterFiltrable trait for models to easy filter their data using cluster_slug property

May 24, 2018


Funny part here. Both session and cookie should have been used. They are named cumulus_clusterslug :)

May 24, 2018


Changed the concept from session to cookie: cumulus_clusterslug

May 24, 2018


Put current cluster slug to Session with key: initbiz.cumuluscore.currentClusterSlug

May 23, 2018


Firing events: addClusterToPlan and addUserToCluster

May 18, 2018


Dropping foreign

Mar 16, 2018


Small organizational fixes

Mar 08, 2018


Fixed MySQL refreshing plugin

Jan 30, 2018


Fixed MySQL installation

Jan 30, 2018


Beautified cluster view in backend

Jan 26, 2018


Moved Cluster slug property from all components to CumulusComponentProperties trait

Jan 22, 2018


Changed texts to strings, extended cluster table

Jan 20, 2018


Fixed auto assigning with tests

Jan 17, 2018


Managing automatically adding users and clusters from settings view + cleanup and small fixes

Jan 16, 2018


Added unique at slug in Modules table

Jan 10, 2018


Added dynamic method onRedirectMe for building login pages

Jan 04, 2018


Fixed one to many relation between Plan and Cluster

Nov 09, 2017


After clean up, Cumulus is ready to be published on Marketplace

Oct 11, 2017


Created table initbiz_cumuluscore_plan_module

Oct 10, 2017


Created table initbiz_cumuluscore_plans

Oct 10, 2017


Created table initbiz_cumuluscore_modules

Oct 10, 2017


Created table initbiz_cumuluscore_cluster_user

Oct 10, 2017


Created table initbiz_cumuluscore_clusters

Oct 10, 2017


Initialize plugin.

Oct 10, 2017