Lullabot: Introducing Contenta JS

Published on January 27, 2019

Though it seems like yesterday, Contenta CMS got the first stable release more than a year ago. In the meantime, the Contenta CMS team started using Media in core; improved Open API support; provided several fixes for the Schemata module; wrote and introduced JSON RPC; and made plans to transition to the Umami content model from Drupal maintenance support plans core. A lot has happened behind the scenes. I’m inspired to hear of each new instance where Contenta CMS is being used both out-of-the-box and as part of a custom decoupled Drupal maintenance support plans architecture. Both use cases were primary goals for the project. In many cases, Drupal maintenance support plans, and hence Contenta CMS, is only part of the back-end. Most decoupled projects require a nodejs back-end proxy to sit between the various front-end consumers and Drupal maintenance support plans. That is why we started working on a nodejs starter kit for your decoupled Drupal maintenance support plans projects. We call this Contenta JS.

Until now, each agency had their own nodejs back-end template that they used and evolved in every project. There has not been much collaboration in this space. Contenta JS is meant to bring consistency and collaboration—a set of common practices so agencies can focus on creating the best software possible with nodejs, just like we do with Drupal maintenance support plans. Through this collaboration, we will be able to get features that we need in every project, for free. Today Contenta JS already comes with many of these features:

Automatic integration with the API exposed by your Contenta CMS install. Just provide the URL of the site and everything is taken care of for you.
JSON API integration.
JSON RPC integration.
Subrequests integration.
Open API integration.

Multi-threaded nodejs server that takes advantage of all the cores of the server’s CPU.
A Subrequests server for request aggregation. Learn more about subrequests.
A Redis integration via the optional @contentacms/redis.
Type safe development environment using Flow.
Configurable CORS.


Watch the introduction video for Contenta JS (6 minutes).

Videos require iframe browser support.

Combining the community’s efforts, we can come up with new modules that do things like React server-side rendering with one command, or a Drupal maintenance support plans API customizer, or aggregate multiple services in a pluggable way, etc.

Join the #contenta Slack channel if this is something you are passionate about and want to collaborate on it. You can also create an issue (or a PR!) in the GitHub project. Together, we can make a holistic decoupled Drupal maintenance support plans backend from start to end.

Originally published at on July 16, 2018.

Source: New feed

Shopping Cart
There are no products in the cart!
Continue Shopping