BoxLang Quick Tips – Better Web Debugging

Today’s BoxLang Quick Tip is incredibly quick, but also, really darn useful and something I had wished I knew earlier. The BoxLang MiniServer is a lightweight web server that you can use to test your web applications. I say lightweight but it’s gotten some really good improvements over the past few months, including flexible URL rewriting. Today I’m going to talk about something that’s going to be really useful to those of you who, like me, make mistakes from time to time. As with most of my BoxLang Quick Tips, you can skip to the video version at the bottom of the post. Let’s consider a BoxLang web application that consists of a grand total of one file: <bx:script>... more →
Posted in: JavaScript

Testing with BoxLang

One of the fun things about immersing myself in BoxLang these past few months is my expose to other products from Ortus. Most recently, I’ve been doing some contracting with a client that makes use of ColdBox, which for my non-CFML readers out there is probably the most well known, and probably most popular, framework for building enterprise web applications with ColdFusion. As part of that work, I’ve been integrating TestBox, a testing and mocking framework that works well with ColdBox, but also (somewhat recently, I think a month or so now), supports BoxLang as well. For the most part, "it just works", but as I was new to it, I did run into a few small issues I thought... more →
Posted in: JavaScript

Integrating Algolia with BoxLang

I’ve been using Algolia for my search on this blog for years and absolutely love the service. At a high level, Algolia is a hosted search service that lets you easily create search indexes (think of it as a search optimized version of your content) while also providing easy libraries to add a search UI to your page itself. If you type in the search bar on top and perform a search, you’ll see this yourself. My site here is static, all simple flat files with no database, so a solution like Algolia is vital. I thought I’d take a look at integrating Algolia’s REST APIs with BoxLang and was able to build a quick demo in less than an hour. Here’s what I did. Initial Setup As... more →
Posted in: JavaScript

Adding a Web Debugger to BoxLang (First Version)

This one’s been sitting in my "to do" blog queue for sometime now and I figured the beginning of spooky season (September 1 – don’t we all start celebrating Halloween then?) was a good excuse to finally kick this out the door. Many, many years ago I learned to love one of the simpler features of ColdFusion, the debugging output. This is a feature ColdFusion has probably had for near twenty or so plus years and while it’s not the same as a "full" debugging service (which also exists), or the powerhouse Fusion Reactor, it’s an incredibly simple way to look at what’s going on in your web application. It works by first enabling it (something... more →
Posted in: JavaScript

First Stab at a BoxLang Log Viewer

The BoxLang folks have a proper "administrator" desktop client coming in the future, but lately I’ve been finding myself needing a quick way to work with logs and preferring a web-based tool versus using tail in my terminal (I know, I’m crazy like that). I thought I’d take a stab (Halloween is coming soon, can you tell?) at a simple web application that could do what I wanted – let me quickly view a log. Logs – Just exactly where are they? I had a vague idea of where my logs were, but if I’m building a tool that others may use (I’ll be linking to the repo at the end) than I’d need that to be dynamic. My initial attempt made use of the... more →
Posted in: JavaScript

Using StringBind in BoxLang

Ok, to be honest, this is going to be a pretty lightweight post as it’s about a simple little string function in BoxLang, but as I discovered it rather recently and was intrigued by what it did. So first off – how did I find this? In the BoxLang docs, there’s a whole section on built-in functions and a subcategory just for string. I was looking it over and realized there were quite a few that I had not known existed. There are some interesting ones in there like pascalCase and snakeCase. I was pretty sure I knew exactly how these worked, but I went ahead and built a quick demo that demonstrates both: Ok, that works well enough, but let’s talk StringBind. StringBind... more →
Posted in: JavaScript

Building a File-Based Router in BoxLang

Earlier this week I took a look at BoxLang’s new rewriting feature (("URL Rewriting with BoxLang MiniServer")[https://www.raymondcamden.com/2025/08/11/url-rewriting-with-boxlang-miniserver]). It basically boils down to telling the miniserver app, "here is a file I want you to run on a 404", and given that you can write code for anything you would like, it’s really flexible. I like this approach, but it got me thinking, what if BoxLang also supported a non-code based rewriting system, something where you can define paths, and rewrites, in a file? I took a stab at architecting such a feature and thought I’d share. My Inspiration My inspiration for this idea... more →
Posted in: JavaScript

URL Rewriting with BoxLang MiniServer

BoxLang recently released it’s 1.4 version, and one of the cooler parts of that update was many improvements to MiniServer. MiniServer is a lightweight web server that makes it easy to spin up and test BoxLang web applications. Updates in the last version included automatic .env loading (which is coming soon to the boxlang CLI as well), websocket support, health checks, and more, but the one I care the most about is URL Rewriting support. Rewrite support is fairly simple. To turn it on, pass --rewrites when running boxlang-miniserver. This will use the file index.bxm for any request that doesn’t match a file (no matter what the extension). You can also specify a particular file as... more →
Posted in: JavaScript
1 2 3 5