Blog

Victor Campos

November 18, 2025

Spread the word


Share your thoughts

Are you tired of staring at endless, unreadable stack traces when exceptions hit your ColdBox app? There’s a better way to handle exceptions, especially during development, and it’s called Whoops!

Whoops offers a clean, interactive way to track and navigate exceptions in your ColdBox applications, making debugging much easier. Let’s dive into how you can enable it in your app.

Step 1: Enable Whoops in Development Mode

First, head over to your config/ColdBox.cfc file and look for the development() environment configuration. You’ll want to add the following setting to tell ColdBox to use Whoops for exception tracking

function development(){
    coldbox.customErrorTemplate = "/coldbox/system/exceptions/Whoops.cfm";
}

This tells ColdBox to trigger the Whoops UI whenever an exception is detected. You’ll get a beautiful, interactive stack trace to help you troubleshoot more effectively!

Step 2: What Does Whoops Do?

Whoops gives you a clean UI stack trace that allows you to:

  • Navigate each file in the stack.
  • Jump to the exact line number where the exception occurred.
  • Integrate with your IDE for instant editing of the problematic file!

No more scrolling through long, convoluted error logs—you can see exactly where things went wrong, and fix them faster.

Step 3: Configure Your IDE for Whoops

Whoops is even more powerful when it integrates directly with your IDE. By default, Whoops is set up for Visual Studio Code (vscode), but you can configure it to use a different editor if that’s your preference.

In the same development() block, add the following configuration to set your preferred IDE

function development(){
    coldbox.exceptionEditor = "vscode-insiders";
}

Here are some valid options for the exceptionEditor setting:

  • vscode (Default)
  • vscode-insiders
  • sublime
  • textmate
  • emacs
  • macvim
  • idea
  • atom
  • espresso

Pick your favorite, and Whoops will let you open the files and jump directly to the line number where the exception occurred!

Conclusion

By enabling Whoops and configuring your IDE, you’ll get a smoother, faster, and more enjoyable exception-tracking experience. Say goodbye to those frustrating debugging sessions and hello to a more streamlined development workflow!

Learn More ColdBox Tips and Tricks

Stay tuned for more ColdBox tips in our ongoing series. if you want to learn more than 10 free tips and tricks make sure to get your “ColdBox 102 tips and tricks book” We have a variety of formats you can choose from.

Get your Copy

Join the Ortus Community

Be part of the movement shaping the future of web development. Stay connected and receive the latest updates on, product launches, tool updates, promo services and much more.

Subscribe to our newsletter for exclusive content.

Follow Us on Social media and don’t miss any news and updates:

Add Your Comment

Recent Entries

BoxLang 1.15.0 Released: Blazing Fast Strings, Runtime Portability, and much more

BoxLang 1.15.0 Released: Blazing Fast Strings, Runtime Portability, and much more

BoxLang 1.15.0 is a high-impact release with two big headlines and a long tail of hardening. The first headline is a massive performance upgrade to string handling: a new first-class BoxStringBuilder type, compile-time literal folding, smarter &= semantics, and a runtime concat strategy that automatically switches to builder-backed accumulation once your expression gets big enough. Your existing string-heavy code just got faster. No rewrites required.

Luis Majano
Luis Majano
July 09, 2026
MatchBox Web Server: BoxLang Without the Full Server Stack

MatchBox Web Server: BoxLang Without the Full Server Stack

MatchBox includes a native web runtime for building small, fast BoxLang web applications without requiring a JVM or a traditional servlet container. You can follow the MatchBox open beta at https://github.com/ortus-boxlang/matchbox. There are two related pieces in the beta today: a webroot server for .bxm templates and static assets, and a routed app server built around web.server(). Both are early, but they show the direction clearly: BoxLang should be able to serve HTTP from a compact native runtime when the application does not need the full JVM stack.

Victor Campos
Victor Campos
July 07, 2026