Modular architecture Only plug-in what you really need

Your CMS product might be what it is, and always be just that way. No new features are added, no options are available - it is the way it is, and that’s how it will stay. Redakt CMS is built on cutting-edge technology, and will stay that way. Don’t get left behind, use the CMS that is aiming for the future - right now!

Redakt CMS is designed around a pluggable modular architecture. This makes it infinitely expandable, but also allows the CMS to be pared back to only the components you need. This helps to keep both the application performance and the dependency tree optimal.

Redakt has several different type of modules that can be used, accessed by simply installing and configuring the appropriate package. All of these module types implement a set of interfaces, and you can provide your own custom module if needed. In combination with cross-platform hosting options the possibilities are endless.

Data store

The core Redakt system does not include a data store implementation by default. Instead, you can plug-in the data store of your choice, allowing the flexibility to install the CMS in many different situations. Redakt supports a number of data stores out of the box including MongoDB and RavenDB, fast document databases that can be run on-premise or hosted, Azure CosmosDB and Amazon DynamoDB for storing your data in the cloud, and LiteDB, a local file database for smaller projects.

You can easily add your own custom data objects to the same data store using standard components that Redakt CMS provides. This eliminates the requirement to setup a separate database for your custom data.

File store

Blob files are saved and retrieved by a file store module. This includes any media and document files that you upload to the CMS and want to make available to the website front-end. Redakt can store files on the local file system or a network share, alongside the data in a MongoDB or RavenDB database, or in the cloud with Azure Blob Storage or Amazon S3.

Application cache

Redakt CMS makes heavy use of application caching. This speeds up the response time and helps to prevent expensive roundtrips to the data store for objects that are retrieved often. Objects can be cached in local server memory, in a Redis cache, or a Memcached service.

Service Bus

In a load-balanced environment, the Redakt CMS system communicates with service instances through a service bus. This can be done through a specialized collection in a MongoDB database, or in the cloud with Azure Service Bus or Amazon SNS/SQS. A service bus is not required for single service instance environments as all communications are direct.

Feature modules

The data modules mentioned above are required for Redakt CMS to run. Redakt CMS also has a number of optional feature modules. For example, the CMS back office application, where users manage content, is not included in the system by default. This way, you may opt to install the back office application in a separate service (e.g. behind a firewall), while having a load-balanced public website without back office. This increases security and lowers the risk of the site being hacked.

Redakt CMS also provides a Content API. This is useful for single page applications (SPA) where website pages are not rendered server-side.

Extensibility points

Besides these interchangeable and pluggable modules, Redakt CMS has many other ways to be extended with new features. Almost every part of the system can be customised by providing your own implementation. Want to use a different view engine? No problem. Found another image processing library? A few lines of code and you can plug it in.

This makes Redakt CMS highly flexible and future proof in an unprecedented way.