Wheels-The Fast & Fun
CFML Framework!

Build apps quickly with an organized, Ruby on Rails-inspired
structure. Get up and running in no time!

Latest From the Wheels Dev Blog

LitePost Contest Screencasts

Here are two 5 minute screencasts to help you get started for the Wheels Litepost Learning Contest.

Getting Started Outline

  1. Check out Litepost through SVN
  2. Run the SQL query to create the Litepost tables
  3. Download Wheels and installing
  4. Configure the datasource for Wheels
  5. Create a model cfc
  6. Create a controller to call the model
  7. Create a view
Getting Started Screencast link

Getting Started Notes

  • Really, the first step is done to get the create tables sql script so we can create our Litepost tables and so you can review other frameworks implementation of Litepost. You could grab blogTables.sql and run it.
  • I skipped showing setting up a ColdFusion instance and creating the Litepost datasource for time purposes.
  • The scaffolding plugin will generate the create, read, update, and delete (CRUD) functionality for you in a few seconds.

Creating CRUD in a few seconds Outline

  1. Download Scaffolding Plugin and install
  2. Generate User Model, View, and Controller
  3. Review user interface generated
  4. Review Model code generated
  5. Review Controller code generated
Creating CRUD in a few seconds Screencast link

Creating CRUD in a few seconds Notes

  • You will have to repeat the scaffolding plugin code generation for each table needing CRUD.
  • Finish the other requirements

Submissions

Please email entries to henkem...@gmail.com include your name and your Wheels/LitePost example. Any code emailed may be used by ColdFuson On Wheels.

December 03, 2010 by Mike Henke

Internal Documentation in CFWheels 2.0-beta

One of a developer's biggest time sinks is coming up with and writing accurate and engaging documentation. Even if it's an internal project with.. well, just you... it's still incredibly valuable to have: coming back to projects a few months or even years later can often lead to a bit of head scratching and screams of "why?", especially with your own code. Whilst we're not promising that CFWheels will write all your documentation for you, we have put some tools in place to hopefully make the process a little less painful. With a small amount of adjustment in how you document your core functions, documentation doesn't necessarily have to be such a time consuming process.

Browse the Core API

The first thing to notice is the new '[View Docs]' link in the debug section in the footer: Following that link leads you to the internal documentation. This is a dynamically created set of documention created via javaDoc commenting in the main CFWheels Core. The three column layout is designed to allow for quick filtering by section or function name. On the left are the main CFWheels core categories, such as Controller and Model functions, which are then broken down into sub categories, such as Flash and Pagination functions etc. Clicking on a link in the first column will filter the list in the second  and third columns with all the functions which match (including child functions of that category). Filtering by function name is made simple by a "Filter as you type" search field in the second column, so getting to the right function should be very quick. The third column contains the main function definition, including tags, parameters and code samples.

How is it generated?

Each function in the core is now appropriately marked up with javaDoc style comments. This, combined with getMetaData() allows us to parse the markup into something useful. https://gist.github.com/neokoenig/8405738d398b8555532fe0d1f0e21cca The [section] and [category] tags categorise the function as appropriate, and the @html part describes the function's parameter. The additional parameter data, such as whether it's required, type and any defaults are automatically parsed too. This results in a display like:

Documenting your own functions

Any function which is available to Controller.cfc or Model.cfc is automatically included; if there's no javaDoc comment, then they'll appear in uncategorized. But of course, there's nothing stopping you creating your own [section] and [category] tags, which will then automatically appear on the left hand column for filtering: you're not restricted to what we've used in the core. As an example, if you wanted to document all your filters, you might want to have a [section: Application] tag, with [category: filters].  This way, your application documentation grows as you create it. Something as simple as a sublime text snippet for a new function which includes the basic javaDoc skeleton can get you in the habit pretty quickly!

Plugins too!

We also introspect plugins for the same markup. We encourage plugin authors to adjust their plugin code to include [section: Plugins] at the very least. We do appreciate it will take a while for the plugin eco-system to catch up with this though. More on plugins later.

Exports & Re-use

You can export the docs via JSON just by changing the URL string: i.e ?controller=wheels&action=wheels&view=docs&type=core&format=json You could also include the functions used to create the docs and create your own version (perhaps useful for a CMS or other application where you have internal documentation for authenticated users). Whilst this isn't officially supported (the main functions may be subject to change!) it is technically possible. The best example is the thing itself - see the main output if you're interested. Please note that the user interface isn't available in production mode (for obvious reasons we hope!), so if you wanted to expose this data to an end user, you would probably need to "roll your own" with this approach.

Updating

Note that the CFC introspection doesn't automatically happen on every request, so you will need to ?reload=true to see changes to your code. Additionally, Adobe ColdFusion is more aggressive in caching CFC metadata, so depending on your settings, you may not see changes until a server restart.

Code samples

Whilst the core has additional code samples which can be loaded from text files, there's no support for your application functions to take advantage of this yet.

Roadmap

Whilst this API/function explorer is a great first step, you'll notice your controller and model specific functions aren't included (only those shared amongst controllers, or in the /global/functions.cfm file. This is because we're only looking at the main Model.cfc and Controller.cfc and what it can access. In CFWheels 2.1, we'll look at adding a full Controller and Model metadata explorer using the same techniques, and map functions like show() to their respective routes too.  

May 08, 2017 by Tom King

CFWheels v2.5.0 Released

This is a major milestone release of CFWheels v2.5.0 that has been in the works for over a year. As you can see nearly 34 PRs have been merged into the codebase which include many enhancements and bug fixes. In addition many changes have been made to the tooling used in the project.

Here are some of the highlights:

  • We have begun to publish SNAPSHOTS to ForgeBox.io on each successful commit to the develop branch.
  • The GitHub Actions CI scripts use the same configuration files as the local Docker testing suite. If you are inclined to contribute to the CFWheels project you will most likely want to be able to run the test suite locally in Docker containers to test your changes before you submit a PR. To run the local test suite simply type docker compose up in the root of your project. The source code is injected into the containers dynamically so it makes it easier to make changes and see them appear in the docker containers without rebuilding the containers. Look for more details on this to come in the future.
  • Every commit is now tested across a matrix of 20 combinations of CF Engines and Databases. The matrix includes CF Engines (Lucee 5, Lucee 6, Adobe ColdFusion 2016, Adobe ColdFusion 2018, Adobe ColdFusion 2021, and Adobe ColdFusion 2023) and databases (H2, MS SQL Server, PostgreSQL, and MySQL).
  • Each successful commit automatically builds two packages on ForgeBox. One for the default template and one for the core CFWheels folder.

Upgrading an Existing Project

The changes in this version are confined to the wheels directory so simply swapping out your wheels directory should be all you need to do to upgrade.

Changelog

Model Enhancements

  • PR-1183-Allow datasource argument in finders #1183 - [Adam Chapman]
  • PR-1201-Issue ORM create() fails object validation for not null columns with defaults #929 validate not nullable columns with default #1201 - [Adam Chapman]
  • PR-1202-Remove old oracle test workaround #1202 - [Adam Chapman]
  • PR-1205-issue-1182-adds-simplelock-to-sql-caching #1205 - [Adam Chapman]
  • PR-1222-Findall() performance bottleneck #1222 - [Adam Chapman]
  • PR-1223-refactor-queryCallback-with-inbuilt-query-functions #1223 - [Adam Chapman]
  • PR-1226-Invalid column not throwing exception in select argument #1226 - [Zain Ul Abideen]
  • PR-1265-improve-performance-refactor-out-listfind #1265 - [Adam Chapman]
  • PR-1260-Adds support for native query returnType #1260 - [Adam Chapman]
  • PR-1249-Removed the original IF/ELSE condition that invalidates calculated props and added condition #1240 - [Zain Ul Abideen]

View Enhancements

  • PR-1254-issue 908 enable paginationLinks() to set active class on parent #1254 - [Zain Ul Abideen]

Bug Fixes

  • PR-1227-Return a numeric value if the primary key is Numeric #1227 - [Zain Ul Abideen]
  • PR-1257-Checkbox bug when checkedvalue is not true #1257 - [Adam Chapman]
  • PR-1246-set the default route if it is not passed in the function #1246 - [Zain Ul Abideen]
  • PR-1256-issue 889 unable to duplicate component #1256 - [Zain Ul Abideen]
  • PR-1253-Issue 580 select ambiguous column name using the wheels alias #1253 - [Zain Ul Abideen]
  • PR-1245-Added afterFind callback hook in the findAll function in case of structs #1245 - [Zain Ul Abideen]
  • PR-1302-Check for Reload Password when setting a url IP exception #1302 - Peter Amiri

Miscellaneous

  • PR-1175-restoreTestRunnerApplicationScope setting #1175 - [Adam Chapman]
  • PR-1176-fix text in core readme file #1176 - [Per Djurner]
  • PR-1177-fix text in base template readme file #1177 - [Per Djurner]
  • PR-1178-fix text in default template file #1178 - [Per Djurner]
  • PR-1185-adds-root-docker-volume #1185 - [Adam Chapman]
  • PR-1200-Update the docker-compose command to docker compose v2 syntax #1200 - [Adam Chapman, Peter Amiri]
  • PR-1204-Add Lucee 6 to test matrix on local Docker test suite #1204 - [Peter Amiri]
  • PR-1203-ensure testing params maintained #1203 - [Adam Chapman]
  • PR-1228-Adding addClass attribute in the function textField #1228 - [Zain Ul Abideen]
  • PR-1230-Add Adobe 2021 Support to local Docker and GitHub Actions testing - #1230 - Peter Amiri
  • PR-1264-update Lucee 6 version used for tests to latest #1264 - [Zac Spitzer - * New Contributor *]
  • PR-1241-Fix spelling and remove whitespace from link #1241 - [John Bampton]
  • PR-1247-show the current git branch in the debug layout #1247 - [Michael Diederich]
  • PR-1250-Added test framework functions in the docs #1250 - [Zain Ul Abideen]
  • PR-1255-issue 1179 Downloaded the CDN files and changed paths in files #1255 - [Zain Ul Abideen]

Guides

  • PR-1198-Documentation-fixes #1198 - [Adam Chapman]

Download Zip File

November 04, 2023 by Peter Amiri

Core Team Updates

Thanks to Per & Chris

Over the past ten years we've been very lucky to have some great developers being part of the CFWheels core team. Unfortunately every now and then, we have to let people move on to other things as their jobs or circumstances change, and sadly we've had to say goodbye to Per Djurner (@perdjurner) and Chris Peters (@chrisdpeters) recently.

Both have contributed massively to CFWheels over many years: I think there are a lot of people who can blame Chris for his original series of screencasts getting them hooked (myself included!) on Wheels, and I'd wager that every CFWheels user has benefited from Per's knowledge and guidance; both of them will be missed - a huge thank you to both of them.

Welcome to David & Andy

We're pleased to announce that David Belanger (Github/dbelanger) and Andy Bellenie (Github/andybellenie) have agreed to join the Core team. Andy used to be on the team a few years ago, and brings lots of years of CFWheels experience with him. David joins us from Argentina (and occasionally Canada), making us a highly international group, with Tom & Andy in the UK and Adam over in Australia (unfortunately, with very few timezone crossovers!). It's fantastic to have them on-board.

Up Next

Our next milestone is finishing up a 2.1 release: Please check the 2.1 Milestone to hear about upcoming features such as improved CORS headers, and also check the Changelog for all the bug fixes and improvements already implemented since 2.0.1. 

September 14, 2018 by Tom King

CFWheels 2.1 Released

Today sees the release of CFWheels 2.1. Only a couple of bug fixes since the beta, so please refer to the changelog for a list of all changes.

Download now (zip)

If updating from CFWheels 2.0.x:

  • replace your wheels folder from the one in the download, and
  • outside the wheels folder, ensure you've got a file at events/onabort.cfm and create it if needed.
  • rename any instances of findLast() to findLastOne() (this has been changed due to Lucee 5.3 having a new inbuilt function called findLast() which clashes with the wheels internals)

Happy Easter, and stay safe!

April 12, 2020 by Tom King

ColdFusion on Wheels 1.1.1 Released

We're releasing ColdFusion on Wheels version 1.1.1 today after identifying and fixing a few bugs reported over the past couple weeks. The upgrade should not affect current 1.1 users, so we strongly encourage that you upgrade immediately. As with all releases in the 1.x cycle, you can upgrade by replacing the wheels folder in your current application with the new one from the zip file. Here is the list of issues resolved from the CHANGELOG:
  • Added number formatting on the value passed in to "count" in the pluralize() function
  • Fixed renderWith() so that it works in all environment modes when returning JSON
  • Fixed belongsTo association code when using composite keys
  • Allow cfthread to be used in views
  • Fixed paging code for non-parameterized queries
  • Corrected bug in request verification when session management was disabled in Railo
  • Changed "if" to "condition" (and deprecated) on all validation methods to get around the fact that "if" is a reserved word in cfscript
  • Fixed autolink() so that it correctly links and escapes relative paths
  • Fixed so including partials with layouts does not cause duplicated content
Let's keep squashing these bugs, so be sure to share your experiences with the framework in the Google Group and the issue tracker.

December 21, 2010 by Chris Peters

Come Get Your Fresh 0.7 Release!

ColdFusion on Wheels is back with its triumphant 0.7 release. We're glad to have Wheels's ORM features back, along with a complete rewrite of the code base for improved performance. We're hoping to write about great uses of the ORM features in particular in the coming weeks. Some very capable hands went into this release. Per Djurner completely rewrote the code base, Peter Amiri has been helping with bug fixes and documentation, and yours truly has been coordinating efforts, documentation, and redesigning the site. There is a ton to do. Peter, Per, and I will primarily be working together on documentation. We understand that it's all quite sparse at the moment, and we also understand that it is our biggest opportunity for standing out from the other frameworks. Be sure to subscribe to the blog to stay up to date with current developments on the project.

December 21, 2008 by Chris Peters

The cf.Objective() Finale

I will be speaking at cf.Objective() 2011 in a little less than an hour. If you're around, come by to get a free Wheels t-shirt! Awesome scotch glass logo design by the team at Hipervinculo. P.S. To keep things consistent with the CFUnited post from earlier this year, I'm attaching another blurry photo. All photos of t-shirts must look like Big Foot sightings.

May 14, 2011 by Chris Peters

Creating a mega quick JSON API in CFWheels 2.x


March 12, 2018 by Tom King

LitePost Contest Ends Feb 19th

The Learning Wheels LitePost Contest is wrapping up on Feb 19th. It is meant for a quick and simple intro into Wheels.

Prize

Grand Prize (one): $100 Amazon Gift card Runner Up Prizes (two): $50 Amazon Gift card Everyone: Free one year Mini Hosting Plan at Alurium Hosting (over $40 value)

Submissions

Please email entries to henke.mike@gmail.com include your name and your Wheels/LitePost example. Any code emailed may be used by ColdFuson On Wheels. Any try will be accepted even if not fully functioning.

Getting Started

Here are two 5 minute screencasts to help you get started. Also a blog entry by Ryan Stille on experience with the contest.

December 17, 2010 by Mike Henke

Welcome to Our Community

Welcome to Our Community - a place where like-minded people connect, share ideas,
and grow together in a positive and supportive environment.

Explore community
Wheels.dev Community

Top Contributors

Per Djurner

Contributed as a Software Developer

Per Djurner is a long-time core contributor and leader of the Wheels framework, with a history of shaping its direction since the project’s early days. He made the very first commit and has continued to contribute regularly, fixing important bugs, refining SQL handling, and enhancing model methods with more flexible options. In addition to code, he has improved documentation, templates, and overall project stability, ensuring Wheels remains reliable and developer-friendly. His work reflects both technical expertise and long-term commitment to the growth of the framework.

Per Djurner profile picture

Peter Amiri

Contributed as a Software Developer and Project Manager

Peter Amiri is a senior developer and community leader who has taken on a core team / maintainer role in the Wheels framework. He has decades of experience with ColdFusion (since version 1.5), including work in user-groups, large scale sites, and infrastructure. Since returning to the project, he’s helped revitalize it — organizing roadmap discussions, guiding structure changes, supervising modernization (including CLI improvements, package modularization, and updating workflows), and helping re-energize community contributions.

Peter Amiri profile picture

Zain Ul Abideen

Contributed as a Software Developer

Zain Ul Abideen is an active contributor to the Wheels framework, playing a key role in improving its stability and usability. His work includes fixing issues like invalid columns not throwing exceptions, ensuring primary keys return correctly as numeric, and refining logic around calculated properties. He also enhanced view helpers to better handle active states and improved default routing behavior. Through these contributions, Zain has strengthened both the framework’s reliability and developer experience.

Zain Ul Abideen profile picture

Anthony Petruzzi

Contributed as a Software Developer

Anthony Petruzzi has made valuable contributions to the Wheels through code improvements, bug fixes, and collaborative reviews. They’ve helped refine core components, enhanced framework stability, and actively participated in issue discussions to steer design decisions. Their efforts in writing clear, maintainable code and offering constructive feedback in pull requests have strengthened the project’s code quality. Overall, Anthony Petruzzi involvement showcases dedication to open-source collaboration and meaningful impact on the Wheels ecosystem.

Anthony Petruzzi profile picture

Tom King

Contributed as a Software Developer and Maintainer

Tom King is one of the core maintainers of Wheels, with deep involvement in both development and leadership. He oversaw major releases, such as Wheels 2.0, which introduced features like RESTful routing, database migrations, improved CLI support, and a rewritten core in CFScript. He also helps steer the project’s long-term direction — writing blog posts reflecting on its history (e.g. noting its first commits, celebrating milestones) and working to modernize both tooling and community engagement.

Tom King profile picture

Adam Chapman

Contributed as a Software Developer

Adam Chapman has been a dedicated and influential contributor to the Wheels ecosystem. He joined the core team after years of community support, helping to steer architectural evolution and plugin integrations. Beyond code, he’s actively engaged in issue triage, proposing enhancements and shaping long-term design direction. His commitment to both community discussion and technical contributions has strengthened the project’s cohesion and future readiness.

Adam Chapman profile picture

James

Contributed as a Software Developer

James has brought forward meaningful contributions to the Wheels through consistent code enhancements, test case development, and active engagement in issue resolution. He frequently submits detailed pull requests, helping to bolster the framework’s robustness and maintainability. Beyond code, James participates in discussion threads and reviews, offering thoughtful feedback which helps keep the project aligned with community needs. His steady involvement has strengthened both core modules and auxiliary features, making Wheels more reliable and polished for all users.

James profile picture

Andrew Bellenie

Contributed as a Software Developer and Maintainer

Andrew Bellenie has played a pivotal role in the Wheels ecosystem, as a long-standing core team member and active community contributor. He brings deep experience in CFML development and framework architecture. Andy has contributed code, design feedback, documentation, and mentorship to newcomers. He also helps triage issues, guide feature direction, and maintain the project’s stability. His dedication helps keep the framework evolving and its community engaged.

Andrew Bellenie profile picture

scahyono

Contributed as a Software Developer

scahyono has contributed thoughtful enhancements to the Wheels codebase, particularly in ensuring compatibility with Oracle setups. Notably, they worked on a module (or plugin) to allow ColdFusion on Wheels to correctly read table metadata across Oracle remote database links, which broadens database support and resilience. Their willingness to tackle specialized integration challenges strengthens the framework’s versatility and helps more users adopt Wheels in diverse environments.

scahyono profile picture

MvdO79

Contributed as a Software Developer

MvdO79 has shown his support for the Wheels not only through code but also as a financial backer. He contributes monthly via Open Collective, helping sustain the framework’s ongoing development. Beyond funding, his presence in issue discussions demonstrates engagement with bug tracking and community feedback. His dual role-as supporter and participant-reinforces the open-source spirit behind Wheels.

MvdO79 profile picture

Raul Riera

Contributed as a Software Developer

Raúl Riera has been an enthusiastic supporter and contributor to the Wheels community-beyond writing code, he’s helped through design, advocacy, and community engagement. He has designed swag such as T-shirts for Wheels events and promoted the framework through his dev shop, Hipervínculo. As a software entrepreneur (founder of Odonto.me) and developer, Raúl bridges technical and community roles, helping raise awareness of Wheels and adding a touch of creativity and outreach to the project’s ecosystem.

Raul Riera profile picture

Michael Diederich

Contributed as a Software Developer

Michael Diederich has contributed key fixes and enhancements to the Wheels, particularly around framework usability and interface issues. Notably, he addressed documentation and UI elements-changes such as showing the current Git branch in the debug layout in version 2.5.0 reflect his involvement. In earlier releases, he also fixed bugs (for example with form and URL handling in the startFormTag() and array routing) that improved reliability across use cases. His contributions help refine both developer-facing tools and core correctness.

Michael Diederich profile picture

Rob Cameron

Contributed as a Software Developer

Rob Cameron had the original idea for CFWheels (and by extension, the foundation for Wheels), having built the framework with inspiration from Ruby on Rails in 2005. Though he eventually moved on from active core development to focus on other projects (such as Rails work), his early design and architectural direction still underpin much of the project's structure and philosophy.

Rob Cameron profile picture

Chris Peters

Contributed as a Software Developer

Chris Peters has been foundational in the development, documentation, and promotion of the Wheels framework since its early days. He authored many of the earliest releases, oversaw version 1.3.0 that introduced HTML5 enhancements, table less models, and thread-safe startup, and managed releases like 1.0.5 with dozens of bug fixes and stability updates. He also wrote technical blog posts about core features (flash messages, asset query strings, error handling) and established guidelines for contributing and documentation, helping to build a strong community around the framework.

Chris Peters profile picture

David Paul Belanger

Contributed as a Software Developer

David Paul Belanger has been a core force behind the Wheels, contributing both technically and strategically across many versions. He has co-authored features and bug fixes (such as updates to sendFile() and usesLayout()) in the 2.x releases. Beyond code, David has helped lead the transition of the framework’s governance and been active in community outreach-having participated in CF-Alive podcasts and collaborated with Tom King and others on guiding the project’s future direction.

David Paul Belanger profile picture

John Bampton

Contributed as a Software Developer and Documentation Writer

John Bampton made his mark as a contributor to the Wheels project beginning with version 2.4.0, where he helped fix broken links in documentation and correct spelling errors in the README and core templates. His attention to detail improved the documentation clarity and usability for future developers. Though he is noted as a “new contributor,” his work helped plug small but important gaps in the project’s written material, aiding the framework’s polish and accessibility.

John Bampton profile picture

Simon

Contributed as a Software Developer

Simon contributed to the Wheels framework by refining code and improving framework functionality. His work helped address issues and enhance stability, making the project more reliable and easier for developers to use. These contributions support the continued growth and effectiveness of the Wheels ecosystem.

Simon profile picture

Brian Ramsey

Contributed as a Software Developer and Quality Assurance Engineer

Brian Ramsey has been a long-time contributor and advocate within the Wheels community. His work spans both code contributions and knowledge sharing, with a focus on improving framework usability for everyday developers. Brian has participated in bug resolution, tested new releases, and provided feedback that shaped core improvements. Beyond code, he’s been active in community discussions, answering questions, and guiding newer users. His steady involvement has helped ensure Wheels remains both developer-friendly and reliable, reflecting his commitment to open-source collaboration and practical problem solving.

Brian Ramsey profile picture

Danny Beard

Contributed as a Software Developer

Danny Beard has contributed to the Wheels framework through targeted code enhancements and thoughtful participation in issue discussions. His work has included fixing bugs, refining logic in core functions, and improving overall framework consistency. Danny’s involvement reflects an eye for detail and a practical approach to problem-solving, ensuring the framework remains dependable in real-world applications. Beyond code, his willingness to collaborate with other contributors has reinforced the community-driven nature of Wheels, helping maintain a strong and sustainable open-source project.

Danny Beard profile picture

Reuben Brown

Contributed as a Software Developer

Reuben Brown has been a valuable contributor to the Wheels framework, offering code improvements and community input that strengthen the project’s overall quality. His work includes bug fixes and refinements that enhance stability and usability, ensuring developers can rely on Wheels in production environments. Reuben’s involvement extends beyond code, as he has taken part in discussions, reviewed issues, and provided practical feedback to guide development. His contributions reflect a thoughtful balance of technical skill and collaborative spirit, reinforcing the open-source ethos of the Wheels project.

Reuben Brown profile picture

Seb

Contributed as a Software Developer

Seb has provided important contributions to the Wheels that help improve framework robustness and usability. Through resolving issues, submitting pull requests, and polishing code, Seb has helped close gaps and make the system smoother for both new and experienced users. They’ve also participated in reviews, giving constructive feedback, which strengthens code quality and consistency across releases. Seb’s steady involvement supports the project’s open-source mission, making Wheels more reliable, maintainable, and welcoming for all contributors.

Seb profile picture

timbadolato

Contributed as a Software Developer

Timbadolato has contributed to the Wheels with a focus on improving functionality, fixing issues, and enhancing developer experience. His pull requests demonstrate a clear attention to detail, addressing edge cases and refining framework behavior to make it more predictable and reliable. By engaging in code reviews and community discussions, timbadolato has helped shape technical decisions and ensured smoother adoption for users. His contributions highlight a practical, solution-oriented approach that supports both the long-term stability and growth of the Wheels ecosystem.

timbadolato profile picture

Alex

Contributed as a Software Developer

Alex has played a supportive and constructive role in the Wheels, contributing code improvements and feedback that strengthen the framework’s overall reliability. His efforts include bug fixes, refinements to core features, and helpful participation in discussions that guide project direction. By addressing issues and proposing practical solutions, Alex has contributed to making Wheels easier to use and more stable for developers. His involvement reflects a collaborative spirit and reinforces the open-source values that keep the project moving forward.

Alex profile picture

Chris Geirman

Contributed as a Software Developer

Chris Geirman made contributions to the Wheels that helped refine parts of the codebase and improve developer experience. While his involvement was smaller in scope, his participation still added value to the framework and reflects the spirit of open-source collaboration.

Chris Geirman profile picture

Zac Spitzer

Contributed as a Software Developer

Zac Spitzer provided contributions to the Wheels that helped address specific issues and improve framework stability. Though his involvement was brief, his work added value to the codebase and demonstrated the importance of community participation in strengthening and maintaining open-source projects.

Zac Spitzer profile picture

Nikolaj Frey

Contributed as a Software Developer

Nikolaj Frey has made contributions to the Wheels framework that supported improvements in the project’s codebase and functionality. While his involvement was limited in scope, his participation still added meaningful value, reinforcing the collaborative nature of the open-source community that drives Wheels forward.

Nikolaj Frey profile picture

Gralen

Contributed as a Software Developer

Gralen contributed improvements to the Wheels framework that enhanced code quality and supported overall stability. Their work helped refine the project and contributed to making the framework more reliable for developers using it in real-world applications.

Gralen profile picture

Doug McCaughan

Contributed as a Software Developer

Doug McCaughan contributed to the Wheels framework by helping refine functionality and addressing issues that improved developer experience. His efforts supported the stability of the project and ensured smoother use of core features. Through his work, Doug added value to the framework’s ongoing development and its open-source community.

Doug McCaughan profile picture

Coleman Sperando

Contributed as a Software Developer

Coleman Sperando contributed to the Wheels framework by making improvements that strengthened its functionality and reliability. His work addressed specific areas of the codebase, helping to refine features and ensure a smoother experience for developers. These contributions supported the project’s ongoing growth and the collaborative effort behind Wheels.

Coleman Sperando profile picture

Charlie Arehart

Contributed as a Software Developer

Charlie Arehart has supported the Wheels framework through his deep expertise in ColdFusion and the broader CFML ecosystem. He has provided valuable feedback, shared knowledge with the community, and highlighted best practices that strengthen adoption and reliability. His involvement helps connect Wheels development with the wider ColdFusion community, ensuring the framework remains relevant and accessible to developers.

Charlie Arehart profile picture

Charley Contreras

Contributed as a Software Developer

Charley Contreras contributed to the Wheels framework by helping refine parts of the codebase and supporting improvements that enhance usability. His work added value to the project’s overall stability and reflects the collaborative effort of developers working together to keep the framework evolving and reliable.

Charley Contreras profile picture

Brant Nielsen

Contributed as a Software Developer

Brant Nielsen contributed to the Wheels framework by improving functionality and addressing issues that supported better performance and reliability. His work helped refine the codebase and enhance the developer experience, reinforcing the project’s commitment to building a stable and effective open-source framework.

Brant Nielsen profile picture

Ben Nadel

Contributed as a Software Developer

Ben Nadel is a veteran ColdFusion developer known for deep technical thought leadership and contributions to the community, including work around Wheels and related topics. He writes regularly about extending and customizing parts of Wheels (for example, customizing the router/proxy component behavior to suit specific workflow preferences). He also shares experiments and educational posts (e.g. integrating HTMX in ColdFusion apps) that help other developers understand modern patterns in CFML. While he may not always be contributing direct core framework commits, his influence shows up in how people use and adapt Wheels in real-world apps, and in sharing best practices, tutorials, and ideas that help shape how the framework is viewed and utilized.

Ben Nadel profile picture

Andrei B.

Contributed as a Software Developer

Andrei B. contributed to the Wheels framework by helping refine code and improve functionality in targeted areas of the project. His efforts supported greater stability and usability, making the framework more dependable for developers. These contributions reflect the collaborative spirit that drives the ongoing success of Wheels.

Andrei B. profile picture

Adam Larsen

Contributed as a Software Developer

Adam Larsen contributed to the Wheels framework by improving functionality and addressing issues that enhanced the stability and reliability of the codebase. His work helped refine features and ensure a smoother experience for developers, supporting the ongoing growth and maintenance of the project.

Adam Larsen profile picture