Customizing BCMS

BCMS is a powerful system, with a lot of options for customization, that you'll learn just when you need them. BCMS allows developers to extend its functionality, and adapt it to their needs and use cases.

You can add custom features to BCMS in two ways: by creating a plugin, which is more advanced, or by creating functions, events and jobs. By extending BCMS functionality, you build on top of its core functionality.

Key BCMS elements

When customizing your CMS it's good to know a few of key elements of BCMS:

  • BCMS back end - or the back end, refers to a Core BCMS module that handles common and custom back end tasks. Those tasks include communication with the database, database caching, scoping, restrictions and security, object aggregation and relational updates, real-time connection with sockets, and many more.
  • BCMS UI - or the dashboard, refers to a Core BCMS module that provides CMS user interface interface. Simply - it's the front end of the BCMS.
  • BCMS SDK - or the SDK, refers to a Core BCMS module that provides a layer of abstraction between the UI and the back end. It is a client side module used by the UI and it handles caching, communication with the back end API, and data synchronization, among many other things.

Getting started

To customize your CMS, you will need to create a local CMS project. Make sure to save a copy or your local project because deploying changes to the Cloud won't save your project structure, the Cloud will only store production optimized versions of your custom code. It's recommended to use GitHub, GitLab or BitBucket for storing your code.