Last week I was able to upgrade my Clean Starter Kit package to work with Umbraco 15.
I didn't do it for Umbraco 14 because some of the key features of Umbraco hadn't been built yet, such as the inline block editing, so when I found that it now works in Umbraco 15, I decided to get Clean Starter Kit working in it.
This post shows you the steps I took to update the package to make it work with Umbraco 15.
1. Create a new branch
Firstly, I created a new dev/v5 branch of Clean in GitHub
Currently the main branch has v4 which works for Umbraco 13, the Long Term Support version of Umbraco).
2. Update the csproj files
Next I updated my csproj files to point to Umbraco 15 and change a reference from Umbraco.Cms.Web.Backoffice to Umbraco.Cms.Web.Website.
3. Update the Program.cs file in the Clean.Site test project
There was only a small change to make to the Program.cs file, it was to remove the line which added the delivery api and the one which uses the installer endpoints.
4. Remove the use of Smidge
Smidge was a package, which used to come with Umbraco, that you could use for bundling and minification. In Umbraco 15, Smidge doesn't ship with Umbraco out of the box anymore, so I decided to remove it from Clean Starter Kit. Instead I just referenced the CSS and JS files from the master.cshtml file.
5. Replace Package Manifest Filter with Package Manifest Reader
This was the part I was worried about because I had heard that you can't register your package with just C# anymore. Clean Starter Kit isn't like a normal package where you are extending the backoffice in some way to add a dashboard or something. It installs some content, media, document types and templates using a package migration. So how was I going to be able to register it just using C#?
I messaged my friend Kevin Jump (inventor of uSync amongst other great packages) he showed me how I can use a new thing called a Package Manifest Reader and the trick was to give it an empty block of JSON and set the other properties in code.
With this technique I was able to remove the Package Manifest Filter file and use a Package Manifest Reader instead. I also had to update my composer to add it in.
6. Release the package
With all of those changes made, I was able to release the new version of the package to work with Umbraco 15.
If you would like to try out Clean Starter Kit in Umbraco 15 you can use this script to install it
Here is a screenshot of the script the link goes off to.
Want to learn more about Umbraco?
At ClerksWell, we’re dedicated to unlocking the full potential of Umbraco for your organisation. As an Umbraco Gold Partner and home to 7-time Umbraco MVP Paul Seal, our expert team is equipped to assist you with:
- Re-platforming to Umbraco
- Custom CMS design and development
- Migration to headless setups
- Third-party integrations and customisations
- Ongoing support and maintenance
- Digital marketing and SEO strategies
Whether you’re looking for Umbraco support or need a comprehensive Umbraco health check, we’re here to guide you every step of the way.
Ready to elevate your digital experience? Contact us today and let’s discuss how we can help you thrive with Umbraco!