Cloud Experts Unleashed

Ben & Ryan Show - wheels.dev


Listen Later

In this episode, your hosts Ben Nadel and Ryan Brown are joined by Peter Amiri, the current maintainer of the Wheels framework (formerly CF Wheels), to discuss its evolution and future. They dive into the history of the ColdFusion-based framework, its comparison with other MVC options, and how it's being modernized for AI-assisted development.


Key Points

• Wheels is a CFML MVC framework inspired by Ruby on Rails, focused on convention over configuration.

• Peter Amiri discusses taking over as maintainer and revitalizing the project with better tooling, testing, and documentation.

• The team explains the pros and cons of adopting Wheels over other frameworks like ColdBox and Framework One.

• Extensive discussion on integrating Wheels into legacy apps and migrating code incrementally.

• Exploration of AI’s potential role in software development and how Wheels is being shaped to support AI-driven tooling.


When Ben and Ryan introduce Peter Amiri, they quickly establish his role as the maintainer of the Wheels framework and dive into what the framework is and its CFML roots.

• Wheels uses the MVC pattern and draws inspiration from Ruby on Rails.

• It emphasizes convention over configuration, simplifying developer onboarding.

• Originated as ColdFusion on Wheels and recently dropped “CF” to become more inclusive.


Peter discusses his motivation to maintain Wheels and shares his experience of revitalizing the project as the former maintainers stepped away.

• Took over after the previous team burned out, motivated by personal reliance on the framework.

• Focused on reducing friction for contributors and users.

• Implemented GitHub Discussions, a sponsorship model, and improved the CLI.


They explore the role of testing and CI/CD within Wheels, highlighting its robust GitHub Actions pipeline for various CFML engines and databases.

• Automated testing runs on multiple versions of Lucee and Adobe ColdFusion.

• Test matrix includes various databases like MySQL, PostgreSQL, and now Oracle.

• Emphasizes the ease of contributing thanks to a well-structured test pipeline.


Discussion shifts to why one would use a framework in CFML, with arguments around organization, maintainability, and community standards.

• Frameworks reduce decision fatigue by offering structured conventions.

• Onboarding becomes easier for new developers.

• Wheels allows some customization while still being opinionated.


Peter and Ben compare Wheels with ColdBox and Framework One, detailing where Wheels fits in the CFML framework ecosystem.

• Wheels sits between lightweight Framework One and feature-heavy ColdBox.

• Each framework has its own philosophy and target use cases.

• Wheels balances inclusivity and opinionation, supporting plug-ins and modular growth.


They explain how a legacy CFML app can be gradually migrated into Wheels using a strategy like the “strangler pattern.”

• Use the “miscellaneous” folder to encapsulate legacy code.

• Gradually migrate logic into Wheels views, then controllers, and finally models.

• Existing templates can often be reused with minor routing updates.


Discussion turns toward how AI is already helping with Wheels development and where Peter sees it heading.

• AI tools like Claude and ChatGPT are surprisingly capable with CFML.

• Peter is exploring how to optimize Wheels documentation and tooling for AI understanding.

• Talks about Model Context Protocol (MCP) as a way to feed runtime data to AI agents.



The episode wraps up with practical recommendations for showing how to onboard legacy codebases into Wheels and the importance of a smooth developer experience.

• Possible screencast idea for walking through a real-world legacy migration.

• Encouragement to adopt modern MVC for maintainability and scalability.

• Wheels’ goal is to offer a polished developer experience rivaling modern frameworks like Rails or Laravel.

...more
View all episodesView all episodes
Download on the App Store

Cloud Experts UnleashedBy xByte Cloud