Package Template

An opinionated Umbraco Package template for Github and NuGet

NuGet package icon for jcdcdev.Umbraco.PackageTemplate

Simple

Get quickly set up with everything you need to start developing an Umbraco package.

Front End

Includes an optional front end using Umbraco UI. Configured to work out of the box!

Opinionated

A lot of decisions have been made for you, taking the hassle out of package development.

Readme

jcdcdev.Umbraco.PackageTemplate

Umbraco Version NuGet GitHub license Downloads

An opinionated template for creating Umbraco packages hosted on Github.

Quick Start

Prerequisites

  1. A basic understanding of NuGet package development

  2. A git repository on GitHub

    • Your repository name must match the project name e.g. Demo.Package
    • GitHub Action Secret - NUGET_API_KEY with your NuGet API key
  3. Install template

    dotnet new install jcdcdev.Umbraco.PackageTemplate
    

Create package

  1. Create new project

    dotnet CLI

    dotnet new jcdcdev-umb-package -o Demo.Package --ghUsername jcdcdev --title "My Demo Package" --description "An empty Umbraco package" --addClient    
    

    Visual Studio

    • Open Visual Studio
    • Create a new project
    • Search for jcdcdev-umb-package
    • Click Next
    • Fill in the project title, description, and other details
    • Click Create
  2. Open project in your IDE

  3. Build and run project

  4. Congratulations! You have created an empty Umbraco package 🎉

Now you can implement your package features.

  1. Update README.md with your package details
  2. Update umbraco-marketplace.json with your package details

Publish

  1. Push your code to GitHub
  2. Create a pull request into the main branch
  3. Merge the pull request
  4. A new release will be created

Template Parameters

Documentation

Test Sites

The solution includes a test site for testing your package features against the following Umbraco versions:

  • 10.4.0
  • 12.0.0
  • 13.0.0

Your package project is automatically referenced in each test site.

Running Locally

On first boot each test site will:

  • Create a SQLite database
  • Create an admin user
  • Run a uSync import to add starter content

Need help?

Contributing

Contributions to this package are most welcome! Please read the Contributing Guidelines.

Acknowledgments (thanks!)

💖