In July 2012, I presented to the Nebraska ColdFusion User’s Group on the topic of FrameWork 1 (FW/1) for ColdFusion. Thanks to Ryan Stille for recording this.
Also be sure to check out “A crash course in MVC with FW/1” with Steven Neiland as this provides a much better method for presenting this topic.
From the FW/1 project site, FW/1 is described as the following:
Framework One – leverages Application.cfc and some simple conventions to provide a ‘full’ MVC framework in a single file.
Intended to require near-zero configuration, FW/1 lets you build your application without worrying about a framework getting in your way.
Controllers, Services (the gateway to your application’s model), Views and Layouts are all ‘discovered’ using straightforward conventions.
Your controller and service CFCs don’t need to extend anything.
Your views and layouts don’t need to know about objects and method calls (a simple ‘request context’ structure – rc – is available containing URL and form scope data as well as data setup and passed by the framework and controllers).
If you use a bean factory of any kind, FW/1 can support that (as long as it offers containsBean(name) and getBean(name) methods) and then FW/1 can autowire controllers and services. Or your controller and service CFC instances can be managed directly by your bean factory if you prefer, again following a simple naming convention!
You can even merge multiple FW/1 applications together using the ‘subsystems’ feature, allowing you to create very large web sites in a modular and scalable manner!