Blog

Relax 4.1.0 Released

Jon Clausen May 07, 2020

Spread the word

Jon Clausen

May 07, 2020

Spread the word


Share your thoughts

We are so excited to bring you the release of Relax version 4.1.0 for Coldbox. Though the release version is minor, this version contains a number of enhancements to OpenAPI v3 support, including better formatting and display of the new-to-3.0 requestBody schema and properties. In addition the user experience has been greatly improved as the UI has been rewritten in VueJS and is now optimized for displaying large API documents with hundreds of routes and thousands of methods. Enjoy!

Relax v4.1.0

Improvements

  • Converts the UI from a BackboneJS implementation to VueJS
  • Performance improvements in rendering large APIs
  • Theme and nested objects updated for better meta/list rendering and display

Features

  • Adds additional support for OpenAPI v3 schema definitions ( content, items )
  • Adds auto-generation of examples from schema from examples defined within items/properties, when not explicitly provided
  • Adds a module setting to exclude APIs from display listings

Compat

  • Removes the direct export of PDF documents due to lack of HTML5 support w/in CFDocument. Export button now routes to HTML after providing PDF print instructions
  • Additional OpenAPI v3.x support

System Requirements

  • Lucee 5+
  • ColdFusion 2016+

Installation

Use CommandBox to install:

box install relax

Configuration

You will need to add ColdBox.cfc with a relax structure under the moduleSettings struct with your preferred settings for Relax.


moduleSettings = {
	relax = {
		// The location of the relaxed APIs, defaults to models.resources
		APILocation = "modules.relax.models.resources",
		// Default API to load, name of the directory inside of resources
		defaultAPI = "myapi",
		// APIs to be excluded from display - may be a list or an array and items may include Regex
		exclude         = "",
		// History stack size, the number of history items to retain in the Relaxer test tool
		maxHistory = 10
	}
};

Modeling

You can look at the samples inside of this module under the models/resources directory. To start you can copy the Relax.cfc into your own project folder and then start spicing up the API via the RelaxDSL methods.

Add Your Comment

Recent Entries

BoxLang 1.17 Series Part 4 : WriteDump Enhanced!

BoxLang 1.17 Series Part 4 : WriteDump Enhanced!

You call writeDump() on an ORM entity or a very rich class graph . The browser locks up. Thirty seconds later you get a page with forty thousand rows on it, you scroll for a while, you give up, and you go edit your code to dump a sub-key instead. Or worse, you crash the server.

Luis Majano
Luis Majano
September 11, 2026
BoxLang AI 3.4 Blog Series Part 4 : Locking Down Prompt Injection

BoxLang AI 3.4 Blog Series Part 4 : Locking Down Prompt Injection

LLM applications face a class of attack traditional input validation was never built for: prompt injection. An attacker embeds instructions in user input, a retrieved document, a web page your tool fetched, or an MCP result, trying to override your system prompt, exfiltrate data, or hijack a tool call. BoxLang AI 3.4.0 ships four layered, configurable defenses against exactly this, plus one more that's on unconditionally.

Luis Majano
Luis Majano
September 11, 2026