Introducing Ziggy MVC

August 04, 2026


In case you missed the announcement at CF Summit in Vegas: FW/1 has a new home and a new name. It's called Ziggy MVC, we forked it via South of Shasta, and it's live now. I gave the short announcement at CF Summit — this is the longer one, with some extra details and info on how to update your code to use Ziggy MVC.

Thank you, Sean Corfield

First, none of this exists without Sean’s hard work. FW/1 has been a fixture in CFML for ages, a lot of us have shipped production code on it, and we’re very happy with the results. Huge thankyous to Sean Corfield for originally making FW/1. He’s aware of all the recent changes and supports these plans.

Why fork?

For various reasons I won't get into here (some technical, some not), a handful of us in the CFML community decided the best path forward was continue development under a new repo and a new name. So that’s what we’re doing, via Ziggy MVC.

What about CFMVC?

You may have seen recent mentions of CFMVC as the next evolution of FW/1. That was Mark Takata's initial run at keeping FW/1 going, hosted on his personal GitHub. Mark is fully behind the move — CFMVC is becoming Ziggy MVC and has Mark’s support.

To give a bit more "separation from Adobe" (so it's obvious that this is not an Adobe-specific project) we forked it via South of Shasta, instead of Mark's personal GitHub.  Also the 'CF' prefix in 'CFMVC' made it sound specific to Adobe, so I went with Ziggy MVC instead. New name, new fresh start, new motivation, etc. And yes, it's a music reference. :)

Who's running it

Thus far, Ziggy MVC has primarily been coordinated by South of Shasta along with Mark and a couple of other folks that have helped out. It’s an open source project just like FW/1 — feedback and contributions are welcome!

What's different in the code?

Right now, just the name. Ziggy MVC is at v5.0.0, and the only change from FW/1 4.x is what you extend in Application.cfc:

// Before
component extends="framework.one" {
// ...
}
// After
component extends="framework.ziggy" {
// ...
}

That's the whole migration. Everything you already know about FW/1 still applies — the conventions, the lifecycle, the subsystems, all of it. Making the first release a straight swap was deliberate: change one word and you're ready for Ziggy MVC!

Where to find it

Want to help?

Please do. Suggestions, bug fixes, docs, whatever you've got — send a pull request. And if you'd like to get more involved in the project itself, reach out and let's talk.

Happy coding.
-nolan