<aside> <img src="/icons/confetti-party-popper_red.svg" alt="/icons/confetti-party-popper_red.svg" width="40px" />

The Craft 6.x alpha has launched! Please see the upgrade guide for the latest information.

</aside>


<aside> <img src="/icons/history_lightgray.svg" alt="/icons/history_lightgray.svg" width="40px" />

This document was originally distributed at Dot All Lisbon, in October 2025, and is no longer maintained.

</aside>

Most Craft projects can be upgraded with only minor changes to configuration. We have also taken great care to design a plugin compatibility layer that allows gradual adoption of Laravel features.

Getting Started

For the workshop, you are welcome to upgrade an existing project, or start a new one.

Upgrading an existing Craft 5 project

We’ve published a guided upgrade tool for existing projects.

https://github.com/craftcms/craft6-prepper

You can install it as a global Composer package on your host system and run it from any project running Craft 5.8 or later:

# From a Craft 5 project directory:
craft6-revamp

# If the command cannot be found, you can try running it directly
~/.composer/vendor/bin/craft6-revamp

# From anywhere:
craft6-revamp --path /path/to/project

It will restructure your files to match the new craftcms/craft starter for Craft 6, and update your DDEV configuration. After completing some automated updates, the tool will print out some Next steps. You may not see all of these, depending on how your application is configured:

Autoloading and Routing

Starting from Scratch

The craftcms/craft starter project has also been updated for Craft 6. The process requires a bit more intervention than in 5.x: