How do I start using Winter for new projects?
Have a look at our dedicated Installation page which describes all the methods available to install Winter CMS.
How do I switch my existing projects to use Winter instead of October?
All existing plugins & themes remain compatible with this fork. After following the below instructions it is also highly recommended to follow the relevant upgrade guides:
- October v1.0 (Laravel 5.5, anything using Build numbers): Winter v1.1 / Laravel 6 / PHP 7.2-8.0 Upgrade Guide
- October v1.1 & v2 (Laravel 6): Winter v1.2 / Laravel 9 / PHP 8.0+ Upgrade Guide
- October v3+: No specific upgrade guides at this time.
For a Composer-based installation
Modify your composer.json as follows:
"october/rain": "1.1.*", "october/system": "1.1.*", "october/backend": "1.1.*", "october/cms": "1.1.*", "laravel/framework": ...,
to the following:
"php": "^8.0.2", "winter/storm": "dev-develop as 1.2", "winter/wn-system-module": "dev-develop", "winter/wn-backend-module": "dev-develop", "winter/wn-cms-module": "dev-develop", "laravel/framework": "^9.1", "wikimedia/composer-merge-plugin": "~2.0.1"
composer update and then proceed to the All installation types section below.
Wizard based Installation
For installations installed using October's wizard installer, copy the
composer.json file from the Winter GitHub repo to the root folder of your installation and run
composer update. Then proceed to the All installation types section below.
NOTE: After running
composer update, there is the potential for the
modulesdirectory to be unavailable if Composer removes the October CMS modules after installing the Winter CMS modules. If this occurs, please re-run
composer updateand the modules will be correctly installed.
All installation types
You will also need to update bootstrap/autoload.php's
$helperPath = __DIR__.'/../vendor/october/rain/src/Support/helpers.php';
$helperPath = __DIR__.'/../vendor/winter/storm/src/Support/helpers.php';
If you are referencing any
October\Rain\* classes directly, you can continue to do so without fear of breaking as they are properly aliased to their
Winter\Storm\* equivalents, but we would recommend you change over the references anyways if you are committing to Winter CMS long term.
If you are making any calls to
october:* commands (including the
october:util set build usually in
composer.json) you will need to switch them to
It is also recommended to update references to
$.wn, although a compatibility layer exists for that functionality as well so that your existing projects will continue to work unmodified.
NOTE: If you are interacting with any of the
X-October-*headers directly, you will need to make sure you update them to be
Composer fails to generate autoload files - missing files from "tests" folder
If you have previously installed October from the Wizard installer, you may be missing the
tests folder in your install, or missing some required files within.
You can download a snapshot of Winter CMS from GitHub, and copy the
tests folder within the ZIP file and place that in your project folder to resolve this issue.
update command fails due to the
This dependency may require Composer v2 to be installed in order to be fully compatible. If you wish to continue to use Composer v1, you can remove the
wikimedia/composer-merge-plugin requirement from your
composer.json file to remove this dependency. Note that this dependency is used to bring in dependencies for plugins that have a
composer.json file within the plugin - if you have plugins with this requirement, you will need to include the plugin in your main