Blog

Brad Wood

May 16, 2014

Spread the word


Share your thoughts

So at Into The Box this week we unveiled our latest here at Ortus that we've been calling project Gideon.  I'll note now that I'm blogging this to the Ortus blog because this is not beholden to the ColdBox MVC platform, but a new general tool we hope to help color the CFML developer's toolbox with.  Of course, even though this is a general tool aimed at the CFML community, you can bet your bippy we're cooking up some sweet Box love for our existing libraries.

CommandBox

CommandBox is a standalone, native tool that will have binaries for Windows, Mac, and Linux.  It provides a Command Line Interface (CLI) for developer productivity, tool interaction, package management, embedded CFML server, application scaffolding, and some sweet ASCII art.  We are working on a number of command namespaces to easily interact with TestBox, ForgeBox, ContentBox, CacheBox, etc.  Built-in help is completely integrated for every command.  You can pop open a CommandBox shell in your terminal window and manually type commands, or even automate things externally via the CommandBox binary with your OS's native shell.  

Package Management

So one of the biggest things we think the CFML community is missing is a true package management platform.  With this in mind, we are going to be reworking ForgeBox this year and opening it up to the entire community.  We have created a spec for a box.json file which will go in the root of CFML packages to describe metadata about the package, how it should be installed, and dependencies that the package requires to run.  Hand in hand with this move, is the complete modularization of the ColdBox platform.  75% of its code has been stripped from the core, and moved into modules on ForgeBox.  CommandBox is getting a tight integration with the ForgeBox REST API to search, view, and install packages/modules directly into your app from the command line.  We want the community to follow in this manner, and if they aren't writing modules for ColdBox (which are getting some sweet new features in ColdBox 4) at least start writing package-able CF code that can be distributed in a consistent and scriptable manner.

Application Scaffolding

CommandBox will have tons of command for quickly building out applications.  Create a new ColdBox app with "coldbox create app", add a handler with "coldbox create handler".  You can even get actions added to it, views created, and BDD integration tests stubbed out at the same time.  This can bring new productivity for people who like to live on the command line and especially for those who want to be able to automate stuff they do a lot of.

Embedded Server

One of the cool things CommandBox brings to the table is the ability to spin up an ad hoc, lightweight, CFML server in any directory from the command line.  Simply change your working directory to the root of your app, type "start" and a super fast Railo server spins up on a new port running your code.  When you're done type "stop" from that directory or use the little icon that's showed up in your system tray.

Whiz Bang Cool

So one of the most interesting things about this entire project is that the actual commands are written in CFML itself!  CommandBox is small, lightweight, integrated at the operating system level, but actually running on CFML at the same time.  This means you will eventually be able to extend it with your own commands that do cool stuff for a different framework, or automate repetitive tasks you're tired of doing every day.  All the code for CommandBox is open source and already available on GitHub.  Tonight I did an informal demo of CommandBox to a BOF here at cf.Objective().  I recorded it on Connect.  I start out talking a bit about ColdBox 4 and ForgeBox, but just stick with me-- I'm laying the groundwork to help paint the bigger picture we're trying to achieve here at Ortus.  We're really trying to push the CFML world forward with tools no one else is making that fall into a bigger picture of productivity, automation, and modular applications.  We hope to have an alpha out in the next week or so to play with and provide your feedback.  Watch the 20 minute recording below and then fire off your thoughts in the comments.

http://experts.adobeconnect.com/p6bz0oi4ppi/

Recent Entries

Hackers demand a ransom to restore data from my ColdFusion web applications!

Hackers demand a ransom to restore data from my ColdFusion web applications!

Hackers demand a ransom to restore data from my ColdFusion web applications!

Unfortunately, we often hear this message from clients who thought it would never happen to them... until it did. Some believed they could delay the expense of Implementing ColdFusion security best practices for one year, while others were tempted to put it off for just a few months. However, in today's rapidly evolving digital landscape, the security of web applications, including ColdFusio...

Cristobal Escobar
Cristobal Escobar
April 16, 2024
Ortus March Newsletter

Ortus March Newsletter

Welcome to Ortus Solutions’ monthly roundup, where we're thrilled to showcase cutting-edge advancements, product updates, and exciting events! Join us as we delve into the latest innovations shaping the future of technology.

Maria Jose Herrera
Maria Jose Herrera
April 01, 2024
Into the Box 2024 Last Early Bird Days!

Into the Box 2024 Last Early Bird Days!

Time is ticking, with less than 60 days remaining until the excitement of Into the Box 2024 unfolds! Don't let this golden opportunity slip away; our exclusive Early Bird Pricing is here for a limited time only, available until March 31st. Why wait? Secure your seat now and take advantage of this steal!

Maria Jose Herrera
Maria Jose Herrera
March 20, 2024