Blog

Luis Majano

November 20, 2017

Spread the word


Share your thoughts


Here are our slides from our ColdBox Hierarchical MVC presentation at this year's Adobe ColdFusion Summit. You can also find the source code for our demo here: https://github.com/lmajano/hmvc-presso-demo or you can install it via CommandBox: box install lmajano/hmvc-presso-demo.


10 years ago, MVC was all the rage in web apps. It taught us to take our mountain of spaghetti code and start to call forth layers; separating the responsibilities of our code. This was great, but the way we should build apps has evolved again and this time it's away from monolithic app design and into modularity. Instead of having one giant custom-built application, there are huge advantages to separating the functional pieces of your code as well to break large applications down into many smaller pieces.

This can make for easier maintenance on a large codebase -- even across multiple teams and repos. It can help you focus on microservices of isolated functionality. And most importantly, it really opens up the door for code reuse-- especially other people's code from the community that has drop-in value for your application.

Let's dive into what a modular MVC architecture looks like in ColdFusion (CFML) using ColdBox 5, how to break apart large applications, write reusable libraries with hassle-free installation, and track our dependencies from the CLI for easy management and automation. This is the future of modern app development. The power of modularity will keep your skills relevant and your architecture extensible. Don't get stuck back in 2005!

Add Your Comment

Recent Entries

Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Introducing the BoxLang Spring Boot Starter: Dynamic JVM Templating for Spring

Spring Boot developers know the pain of evaluating view technologies. Thymeleaf is great — until you need more expressiveness. FreeMarker is powerful — until the syntax fights you. What if you could write templates in a dynamic JVM language that gives you the full power of the platform, feels natural, and requires zero setup to integrate?

Meet the BoxLang Spring Boot Starter.

Luis Majano
Luis Majano
March 13, 2026
Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

Why Swiss Banks Are Modernizing CFML Platforms Without Rewrites

The growing need to evolve legacy financial platforms safely

Many Swiss banks and financial institutions still operate important systems built on ColdFusion and CFML platforms.

These systems manage a wide range of functions, including:

  • internal banking workflows
  • reporting systems
  • client portals
  • data integration platforms
  • compliance and risk management tools

In many cases, thes...

Cristobal Escobar
Cristobal Escobar
March 13, 2026
Reactive vs Proactive ColdFusion Support: Why Waiting for an Outage Is the Most Expensive Strategy

Reactive vs Proactive ColdFusion Support: Why Waiting for an Outage Is the Most Expensive Strategy

Many ColdFusion environments operate in a reactive mode without realizing it.

Everything seems fine… until something breaks.

A server crashes.

Performance drops suddenly.

An integration stops working.

A security audit reveals missing patches.

At that point the response is urgent:

“Can someone help us fix this now?”

Emergency support is sometimes unavoidable. But when reactive intervention becomes the norm, it usually means something deep...

Cristobal Escobar
Cristobal Escobar
March 12, 2026