Skip to content

A yeoman generator that scaffolds DNN extensions, including Modules (Webforms, SPA, and MVC), Persona Bar, Skin Object, Library, Scheduler, and Hotcakes Commerce projects (based on the generator built by Matt Rutledge).

License

Notifications You must be signed in to change notification settings

UpendoVentures/generator-upendodnn

Repository files navigation

generator-upendodnn

NPM version Build Status Libraries.io dependency status for GitHub repo

Scaffolds DNN extensions, including Modules (Webforms, SPA, and MVC), Persona Bar, Skin Object, Library, Scheduler, and Hotcakes Commerce projects (based on generator-dnn built by Matt Rutledge).

The video below will walk you through everything you need to know. (right-click and open in a new tab)

DNN: Building Enterprise & Team Friendly Solutions & Extensions with UpendoDNN


Sponsors == (typeOf superHuman) Awesome;

Yes, it's not real code. It's just supposed to be fun. :P

This solution is created and maintained by Upendo Ventures for the DNN CMS Community. Please consider sponsoring us for this and the many other open-source efforts we do. It's a lot. :)


UpendoDNN Generator

Table of Contents


Installation

1. Manual Software Installation

This generator is dependent on the following popular frameworks, and needs them to be installed for you to use this generator. You probabably already have them installed.

First, install/upgrade Node.js and npm to the most current version.

  • Use a Node Version Manager to Install Node.js & npm

Warning: You may need to add the user path to your Environmental Variables. Here is an example from Windows 10 (you'd replace yourUsername, obviously):

C:\Users\yourUsername\AppData\Roaming\npm

2. Dependency: MSBuild (optional step?)

You also need to install the latest version of MSBuild if you don't already have it installed.

Note: Visual Studio 2019 (and newer) should have installed MSBuild for you.

Do You Need to Install MSBuild Manually?

MSBuild Download Locations

3. Finish Installing by Command Line

The commands below will install the final bits.

  1. Install Yeoman:
npm install -g yo  
  1. Install Yarn:
npm install -g yarn  
  1. Install the generator:
npm install -g generator-upendodnn  

Using UpendoDNN Generator

Now, you're ready to sprint through your DNN projects!

Here are the steps to generate your new project... 4 easy steps!

  1. Create a folder for it:
mkdir my-project-name  
  1. Go into that folder.
cd my-project-name  
  1. Choose the project to install.
yo upendodnn  
  1. Open the solution in Visual Studio, and have fun writing code!

IMPORTANT!

You need to first create the Solution Structure if you haven't yet done so in this directory. Then, create any extension you want.

More verbose instructions on how to use this.

First-Timers: How to Use (verbose)

First, install the generator using the steps above.

  1. Create and navigate to a folder where you wish to begin your new DNN-based solution. (command line example is above)
  2. Run yo upendodnn in CMD or Powershell in that folder.
  3. For the first time, you'll want to always first choose the Solution Structure scaffold and step through the wizard.
  4. Once the solution scaffold is created, run yo upendodnn again to add your other desired DNN projects.
  5. Re-open the solution in Visual Studio, and begin writing code. The project is ready and waiting for you!

That's it! Now you can begin building your awesome DNN extension(s) as you see fit. Everything is now under one easy-to-open, -run, -code, -build, and -commit to source control solution.

Say hi to Will at DNN Summit and DNN-Connect. :)

Awesome Sponsors Accepted Here

Upgrading

Upgrading the Generator for Future Projects

Upgrading the generator is actually quite easy, and the instruction is the same for any and all other generators you might have installed. Just run the following command:

yo

When the view loads, choose the option to Update your generators. The rest is done for you.

In other cases, you may be able to simply re-execute the following command to upgrade upendodnn generator.

npm install -g generator-upendodnn  

Upgrading Existing Projects/Solutions

However, upgrading your existing projects may or may not be more involved. If you want to take advantage of the build process updates, you will at least need to update the build files.

The steps below will help you upgrade the build process in your development environment successfully.

  1. In a new (empty) folder, run yo upendodnn.
  2. Choose the Solution Structure.
  3. Copy the files from both the Build and References folders.
  4. Paste the files into their respective matching folders in your project. Overwrite all.
  5. In any release, if there were any updates to the project file(s) and/or .build file(s), you'll want to return to the new "copy/paste" folder you just created.
  6. Use the upendodnn generator to install each respective extension.
  7. Use a compare/diff tool, like WinMerge, to compare the files and determine which updates you want to merge into your existing development environment.

Video Overview

Additional Features

Additional features for end-users will continue to be added in this project's wiki.

More Documentation

Want to learn more or how to build the generator code locally? Please see our wiki for additional documentation.

UpendoDNN Generator Wiki

Original Project

Original Project Documentation

License

MIT © 2018 Matt Rutledge

MIT © 2019-2023 Upendo Ventures, LLC

About

A yeoman generator that scaffolds DNN extensions, including Modules (Webforms, SPA, and MVC), Persona Bar, Skin Object, Library, Scheduler, and Hotcakes Commerce projects (based on the generator built by Matt Rutledge).

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project