ColdBox Platform


ColdBox is an open-source, conventions-based, modular web application framework intended for building enterprise applications with CFML using a Hierarchical MVC approach. ColdBox uses Convention over configuration and aims for simplicity, rapid development. It makes use of Model-view-controller, Dependency injection, Unit testing, Aspect-oriented programming architectural patterns. ColdBox allows for development of stand-alone modules which can be shared across apps. ColdBox is an active and heavily documented CFML framework.

History

ColdBox is supported on Lucee and Adobe's Coldfusion application servers.
It has supported IDE plugins for, Visual Studio Code, , Eclipse IDE, and .

Usage

Below is a list of some notable users of the Coldbox Platform.
High-level attributes of ColdBox:
The ColdBox Platform comprises three independent frameworks:
ColdBox is conventions-based framework that is programmed in CFML, differing from other CFML MVC frameworks that use XML declarative logic for their controllers.
Below is an example of a controller:

component

URL Mappings

ColdBox supports URL mappings and routing Rails style but adapted for ColdFusion. It also supports the creation of RESTful routing:

// Resources
resource;
// Nested Resources
resources;
// Redirects
route
.toRedirect;
// Direct Routing
route.to;
// With Regex
route/:userID-alpha/regex:
.to;
// subdomain routing
route
.withDomain
.to;
// Responses + Conditions
route
.withCondition
.toResponse;
route
.toResponse;
// Inline Closure Responses
route
.toResponse;
// Views No Events
route
.as
.toView;
// Named routes
route
.to;
// Grouped Routing
group;
// RESTFul Actions
route
.withAction
.to;

RESTful URLs

ColdBox allows for easy creation of RESTful URLs via URL mappings and extension detection. Natively ColdBox can detect any extension when supplied to an URI resource:

http://api.coldbox.org/rest/user/luis.json
http://api.coldbox.org/rest/user/luis.xml
http://api.coldbox.org/rest/user/luis.pdf
http://api.coldbox.org/rest/user/luis.yml

It allows for the detection of such extensions, security around them and the ability to customize the extensions.

Ajax support

ColdBox supports all JavaScript frameworks that provide Ajax capabilities. It also provides an auto-marshalling function to render any object to the following formats natively: XML, WDDX, JSON, JSONP, TEXT, PDF, CUSTOM.

SOAP-Adobe Flex/Air Support

ColdBox offers support for creating, monitoring and developing SOAP web services and Flex/Air remote components. It allows for having one development paradigm for multiple GUI interfaces.

Documentation Links

*
*
*
*