Blogs

All Things Low Code In dotCMS

Jason Smith

We’ve already covered why the dotCMS NoCode capabilities are a game-changer for both technical and non-technical staff. In short, platforms that reduce the burden on IT staff can enable marketers and the organization as a whole to pursue their digital ambition.

While NoCode is great for organizations, let’s take a look at why low code is also crucial for reducing the time and cost involved with development projects for enterprise organizations and bringing innovative digital experiences to market faster.

Why Low Code Matters

Low code limits the need for complex software development projects, and in turn, an organization’s reliance on IT staff. This translates into faster development cycles, easier maintenance for less-technical staff, and an improved ROI for the platform in the long run.

The majority of dotCMS Low Code capabilities, for example, leverage the open source Apache Velocity scripting language to streamline common development tasks and optimize the platform’s Total Cost Ownership. That’s because scripting languages are generally easier to work with and cheaper to find developer talent than more heavy-duty programming languages.

dotCMS Low Code Deep-Dive

dotCMS has low code tooling to streamline a wide range of development tasks.
More specifically, these tools include Lightweight Endpoints, Scripting as a Service, workflows, and more.

Lightweight Endpoints

While dotCMS supports Everything as a Service with a robust set of REST endpoints and native GraphQL out of the box, developers may want additional API flexibility as well. Using simple Velocity scripts, developers can create custom endpoints quickly and efficiently.

Using Velocity files, developers can quickly build REST endpoints for common HTTP requests — GET, POST, PUT, PATCH, and DELETE— without using traditional programming. There aren’t many CMS platforms that offer such straightforward API customization. All in, the numerous API options with dotCMS mean Java developers can focus their efforts on more complex integration tasks rather than developing simple frontend content APIs.

Read More: Lightweight Endpoints: Writing Custom REST Endpoints Without Java

Scripting as a Service

Similar to Lightweight Endpoints, dotCMS built an innovative Scripting as a Service feature to give frontend developers enormous flexibility. By including Velocity code with an API request to the dynamic endpoint, frontend developer can generate a REST endpoint and corresponding response on the fly.

Scripting as a Service, much like GraphQL, gives frontend developers the option of tailoring the API response to fit their requirements. That means these tools are great for integrating with legacy software with code developers would rather not touch. Dynamic API requests, however, can also be useful for integrating with the latest SPA frameworks as well. Most other CMS platforms cannot provide this level of flexibility for frontend integrations out of the box.

Further Reading: Scripting as a Service: A Look at dotCMS’s Scriptable API Builder

Templating, Containers, Widgets, And More

Velocity scripting empowers frontend developers to build dynamic templates, containers, widgets, and other dotCMS objects without requiring Java code. While standard templates are a NoCode feature that leverages a theme for its design, frontend developers can also build highly customized advanced templates using Velocity, JavaScript, CSS, and other frontend scripting languages. Similarly, widgets and containers are dotCMS elements that can contain Velocity scripts and be reused across pages and sites.

Along with designing the page itself using Velocity templates, developers can also leverage a wide range of additional functionality within Velocity scripts using Viewtools — encapsulated Java code. There are Viewtools for pulling calendars, searching using Elasticsearch, handling authentication, and more. Most CMS solutions on the market aren’t as open and extensible as dotCMS.

Workflow (Sub)Actions

dotCMS provides numerous workflow actions out of the box related to approvals, publishing, content translation, and more. Some companies, however, have actions they want included in a workflow that are highly specific to their organization. Luckily, developers can easily build custom actions using Velocity.

Further Reading: dotCMS Workflows Explained

When defining workflows, companies can choose specific Velocity scripts to execute when a particular action is triggered. The ability to completely customize workflows makes dotCMS ideal for compliance, brand consistency, and content velocity.

Scripting Plugin

While the CMS largely leverages Velocity for its low code functionality, dotCMS recognizes that some developers prefer using other scripting languages. With the Scripting Plugin, it’s possible to execute PHP, Groovy, Ruby, Python, or other expressions from within Velocity scripts and Java code.

Further Reading: dotCMS and the Scripting Worlds Collide

The Scripting Plugin, and many other powerful dotCMS plugins, enable developers to reduce their workload. There’s no sense in reinventing the wheel, so the ability to leverage pre-built solutions to common problems is the cornerstone of efficient low code development.
Ingesting External Documents
dotCMS — in line with being a highly interoperable platform — makes it easy for frontend developers to ingest and display external content with minimal effort. Within Velocity scripts and Viewtools, dotCMS can parse cookies, markdown, XML, SQL, RSS, and many other content formats out of the box.

Read On: What is Interoperability: Web Content Management Edition

Using these tools, frontend developers can leverage external content without needing to migrate it into the dotCMS content repository or perform other duplicate efforts. That means dotCMS offers a level of interoperability unmatched by most other CMS platforms.

dotCMS: The Low Code Platform For Developers

A low code platform like dotCMS is critical for minimizing the development costs when implementing a new CMS, building new frontend apps, and integrating third-party systems. It’s also crucial for reducing the ongoing maintenance work that IT staff face, which improves the overall developer experience. These factors make gathering buy-in for the platform easier for key decision-makers.

More importantly, burdening IT times and highly skilled developers with maintenance tasks limits an organization’s ability to innovate. That means organizations without a low code first CMS solution will struggle to keep up with customer demands. Streamline enterprise development and dramatically reduce the total cost of ownership by leveraging the powerful low code capabilities of dotCMS.

Learn more about How dotCMS Enables Interoperability & Extensibility with NoCode, low code, and other powerful features.

Jason Smith
Chief User Experience Officer
March 22, 2020

Filed Under:

low code

Recommended Reading

Headless CMS vs Hybrid CMS: How dotCMS Goes Beyond Headless

What’s the difference between a headless CMS and a hybrid CMS, and which one is best suited for an enterprise?

Why Global Brands Need a Multi-tenant CMS

Maintaining or achieving a global presence requires effective use of resources, time and money. Single-tenant CMS solutions were once the go-to choices for enterprises to reach out to different market...

14 Benefits of Cloud Computing and Terminology Glossary to Get You Started

What is cloud computing, and what benefits does the cloud bring to brands who are entering into the IoT era?