Note
The current version of this template is for creating packages in Umbraco 16. If you want to create a package for an earlier version of Umbraco, install the earlier version of the template. Instructions for version 13 are in the v13/dev branch.
Use this dotnet new
template to get a head start on creating, releasing and maintaining packages for Umbraco 16.
I've called it an 'opinionated' package starter template because lots of decisions have been made for you. This means that all you really have to worry about is adding your package code. A lot of the other stuff involved in developing, releasing and maintaining an open source Umbraco package has been done already.
Of course none of these decisions are irreversible. Once you've used the template you can change whatever you need to. Please make sure you read this readme so you understand what choices you are starting with so that you can change them where necessary before you push to GitHub, and definitely before you publish to nuget!
Nothing! You can learn more about it from this section of the Umbraco 15 unboxing video
It's just that all it gives you is the actual package project. You'll need to set up a test site, work out how to configure it for nuget, how you're going to release to nuget, add certain files for a well maintained repo ...
Whereas this template will create a folder with:
- A new solution (.sln)
- A package project created using the core
umbraco-extension
template - A test site referencing the package project
- A GitHub action for publishing to nuget when a tag is pushed
- A good start on:
- The readme for your GitHub repository
- The readme for your nuget package
- The
umbraco-marketplace.json
file which improves how your package appears on the Umbraco Marketplace
- GitHub templates to help people create good issues and feature requests
- And more!
- License: MIT
- Umbraco version: v16.0.0 (the current major at the time of release)
- nuget package Id:
Umbraco.Community.YourPackageName
Because Umbraco CMS is released with an MIT license, and I've assumed you're releasing this as an open source package too.
If sites are on a Standard Term Support (STS) version of Umbraco, i.e. version 14+, then I believe they should be kept up to date with the latest STS version, so your package doesn't need to support earlier versions. When Umbraco 17 is released (scheduled for November 2025), this template will be updated to use that Long Term Support release. Refer to issue 10 for discussions about what versions to support.
If you don't have a company or personal brand to use as a prefix, then this is a well used convention for Umbraco community projects.
Please read the instructions for how to install and use the template, and how to publish to nuget when you're ready.
Yes feedback, thoughts, issues, pull requests... are of course most welcome!
Please read the Contributing Guidelines.
A lot of the decisions were made whilst collaborating with Lee Kelleher (the creator of Contentment and many other Umbraco packages) whilst developing my Admin Only Property package. So big #H5YR for all your help Lee 🙏!
"out of the box" by Yoyon Pujiyono from Noun Project