<!DOCTYPE html><html lang="en"> <head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="icon" href="/favicon.svg" type="image/svg+xml"><title>Wheels — A Rails-inspired CFML MVC framework</title><meta name="description" content="Wheels is an open-source web application framework inspired by Ruby on Rails. Build CFML applications fast, with convention over configuration, an expressive ORM, and a modern CLI."><link rel="stylesheet" href="/_astro/index.CioQq1IC.css"></head> <body> <header class="wd-header" data-current="landing" data-astro-cid-vq44fwvl> <a class="wd-header__brand" href="https://wheels.dev/" aria-label="wheels.dev home" data-astro-cid-vq44fwvl> <img src="/_astro/wheels-logo.BgAoullp.png" height="28" alt="wheels.dev" class="wd-logo wd-logo--lockup" loading="eager" decoding="async" data-astro-cid-q7mmzlqx> </a> <button class="wd-header__toggle" type="button" aria-label="Toggle menu" aria-expanded="false" aria-controls="wd-header-nav" data-astro-cid-vq44fwvl> <span data-astro-cid-vq44fwvl></span><span data-astro-cid-vq44fwvl></span><span data-astro-cid-vq44fwvl></span> </button> <nav id="wd-header-nav" class="wd-header__nav" aria-label="Primary" data-astro-cid-vq44fwvl> <a href="https://wheels.dev/" class="wd-header__link is-current" data-astro-cid-vq44fwvl> Home </a><a href="https://guides.wheels.dev/" class="wd-header__link" data-astro-cid-vq44fwvl> Guides </a><a href="https://api.wheels.dev/" class="wd-header__link" data-astro-cid-vq44fwvl> API </a><a href="https://blog.wheels.dev/" class="wd-header__link" data-astro-cid-vq44fwvl> Blog </a> <a class="wd-header__link wd-header__link--external" href="https://github.com/wheels-dev/wheels" data-astro-cid-vq44fwvl>
GitHub <span aria-hidden="true" data-astro-cid-vq44fwvl>↗</span> </a> </nav> </header> <script type="module">const e=document.querySelector(".wd-header"),t=document.querySelector(".wd-header__toggle"),o=document.getElementById("wd-header-nav");t&&o&&e&&t.addEventListener("click",()=>{const s=e.classList.toggle("is-open");t.setAttribute("aria-expanded",s?"true":"false")});if(e){const s=()=>{window.scrollY>8?e.classList.add("is-scrolled"):e.classList.remove("is-scrolled")};s(),window.addEventListener("scroll",s,{passive:!0})}</script>  <main> <section class="hero" data-astro-cid-j7pv25f6> <div class="hero__inner" data-astro-cid-j7pv25f6> <h1 class="hero__title" data-astro-cid-j7pv25f6>Build CFML applications, <span data-astro-cid-j7pv25f6>fast</span>.</h1> <p class="hero__subtitle" data-astro-cid-j7pv25f6>
Wheels is an open-source MVC framework for CFML. Rails-inspired conventions, a powerful ORM,
				database migrations, and a modern CLI — so you spend less time wiring things up and more
				time shipping.
</p> <div class="hero__cta" data-astro-cid-j7pv25f6> <a class="btn btn--primary" href="https://guides.wheels.dev/v3-0-0/" data-astro-cid-j7pv25f6>Get started</a> <a class="btn btn--secondary" href="https://github.com/wheels-dev/wheels" data-astro-cid-j7pv25f6>View on GitHub</a> </div> <pre class="hero__install" data-astro-cid-j7pv25f6><code data-astro-cid-j7pv25f6>box install wheels-cli
box wheels generate app MyApp</code></pre> </div> </section> <section class="features" data-astro-cid-j7pv25f6> <h2 class="features__heading" data-astro-cid-j7pv25f6>What you get out of the box</h2> <ul class="features__grid" data-astro-cid-j7pv25f6> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>MVC, done right</h3> <p data-astro-cid-j7pv25f6>
Clear separation between routes, controllers, models, and views. Convention over
					configuration so you write less boilerplate.
</p> </li> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Expressive ORM</h3> <p data-astro-cid-j7pv25f6>
Model classes map directly to database tables. Associations, validations, callbacks, and
					scopes read like plain English.
</p> </li> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Database migrations</h3> <p data-astro-cid-j7pv25f6>
Version your schema. <code data-astro-cid-j7pv25f6>wheels dbmigrate latest</code> on one side and
<code data-astro-cid-j7pv25f6>wheels dbmigrate down</code> on the other — always reversible.
</p> </li> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Modern CLI</h3> <p data-astro-cid-j7pv25f6> <code data-astro-cid-j7pv25f6>wheels generate</code>, <code data-astro-cid-j7pv25f6>wheels test</code>, <code data-astro-cid-j7pv25f6>wheels server</code> — a first-class
					command-line workflow for every step of development.
</p> </li> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Multi-engine support</h3> <p data-astro-cid-j7pv25f6>
Runs on Lucee 5/6/7, Adobe ColdFusion 2023/2025, and BoxLang. Primary development target
					is Lucee 7.
</p> </li> <li data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>20 years strong</h3> <p data-astro-cid-j7pv25f6>
Started in 2006. Production-ready since 1.0 in 2009. Still actively developed, now as
					Wheels 3.x with modern tooling.
</p> </li> </ul> </section> <section class="resources" data-astro-cid-j7pv25f6> <h2 class="resources__heading" data-astro-cid-j7pv25f6>Where to go next</h2> <div class="resources__grid" data-astro-cid-j7pv25f6> <a class="resource" href="https://guides.wheels.dev/v3-0-0/" data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Guides</h3> <p data-astro-cid-j7pv25f6>
Step-by-step guides from installation through deployment. v4.0-SNAPSHOT, v3.0, and v2.5
					all available.
</p> <span class="resource__link" data-astro-cid-j7pv25f6>guides.wheels.dev →</span> </a> <a class="resource" href="https://api.wheels.dev/v3-0-0/" data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>API reference</h3> <p data-astro-cid-j7pv25f6>Every function, parameter, and return type. Searchable across 8 framework versions.</p> <span class="resource__link" data-astro-cid-j7pv25f6>api.wheels.dev →</span> </a> <a class="resource" href="https://blog.wheels.dev/" data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Blog</h3> <p data-astro-cid-j7pv25f6>Release notes, tutorials, and community news from the Wheels core team.</p> <span class="resource__link" data-astro-cid-j7pv25f6>blog.wheels.dev →</span> </a> <a class="resource" href="https://github.com/wheels-dev/wheels" data-astro-cid-j7pv25f6> <h3 data-astro-cid-j7pv25f6>Source on GitHub</h3> <p data-astro-cid-j7pv25f6>Code, issues, discussions, and contribution guidelines. MIT licensed.</p> <span class="resource__link" data-astro-cid-j7pv25f6>github.com/wheels-dev/wheels →</span> </a> </div> </section> </main> <footer class="wd-footer" data-astro-cid-rw4s7d52> <div class="wd-footer__inner" data-astro-cid-rw4s7d52> <div class="wd-footer__brand" data-astro-cid-rw4s7d52> <a href="https://wheels.dev/" aria-label="wheels.dev home" data-astro-cid-rw4s7d52> <img src="/_astro/wheels-logo.BgAoullp.png" height="28" alt="wheels.dev" class="wd-logo wd-logo--lockup" loading="eager" decoding="async" data-astro-cid-q7mmzlqx> </a> <p class="wd-footer__tagline" data-astro-cid-rw4s7d52>
A Rails-inspired MVC framework for CFML. Conventions, ORM, migrations, CLI.
</p> </div> <div class="wd-footer__col" data-astro-cid-rw4s7d52> <h3 class="wd-footer__heading" data-astro-cid-rw4s7d52>Docs</h3> <ul data-astro-cid-rw4s7d52> <li data-astro-cid-rw4s7d52><a href="https://guides.wheels.dev/" data-astro-cid-rw4s7d52>Guides</a></li> <li data-astro-cid-rw4s7d52><a href="https://api.wheels.dev/" data-astro-cid-rw4s7d52>API reference</a></li> <li data-astro-cid-rw4s7d52><a href="https://blog.wheels.dev/" data-astro-cid-rw4s7d52>Blog</a></li> <li data-astro-cid-rw4s7d52><a href="https://blog.wheels.dev/rss.xml" data-astro-cid-rw4s7d52>RSS feed</a></li> </ul> </div> <div class="wd-footer__col" data-astro-cid-rw4s7d52> <h3 class="wd-footer__heading" data-astro-cid-rw4s7d52>Community</h3> <ul data-astro-cid-rw4s7d52> <li data-astro-cid-rw4s7d52><a href="https://github.com/wheels-dev/wheels" data-astro-cid-rw4s7d52>GitHub</a></li> <li data-astro-cid-rw4s7d52><a href="https://github.com/wheels-dev/wheels/discussions" data-astro-cid-rw4s7d52>Discussions</a></li> <li data-astro-cid-rw4s7d52><a href="https://github.com/wheels-dev/wheels/issues" data-astro-cid-rw4s7d52>Issues</a></li> <li data-astro-cid-rw4s7d52> <a href="https://github.com/wheels-dev/wheels/security/policy" data-astro-cid-rw4s7d52>Security policy</a> </li> </ul> </div> </div> <div class="wd-footer__bottom" data-astro-cid-rw4s7d52> <span data-astro-cid-rw4s7d52>&copy; 2026 Wheels contributors</span> <span class="wd-footer__sep" data-astro-cid-rw4s7d52>·</span> <span data-astro-cid-rw4s7d52>MIT licensed</span> </div> </footer>   </body> </html> 