...via yarn
yarn global add @dnncommunity/dnn-cli...via npm
npm install -g @dnncommunity/dnn-cliOnce dnn-cli is installed, it may be used via Command Prompt, PowerShell, Terminal, etc.
dnn [create-extension] [extensionType] [moduleType | customExtensionRepo] [--install | -i]Initially, dnn-cli supports create-extension. Over time, the vision is to grow the CLI to support even more great features. For now, at least, the following two commands are the same:
dnn
dnn create-extension
It can be used to quickly setup a new local project by cloning any available starter project found within the DNN Community organization on GitHub. All available starter project repositories follow the repo naming convention of starter-<extensionType>-<moduleType>.
It also supports custom git repositories of your chosing.
A new local project can be quickly installed into an empty directory of your choice using the following CLI syntax. Optional dnn command arguments are indicated using brackets [ ].
dnn [extensionType] [moduleType | customExtensionRepo] [--install | -i]Upon running the command and responding to any applicable prompts, the new project will be cloned in the directory from which the dnn-cli command was run.
dnnThis will result in being prompted for
extensionTypeandmoduleType(orcustomExtensionRepo) depending on extensionType selected.
dnn themeFor an
extensionTypethat does not have amoduleTypeorcustomExtensionRepo, no prompts will be displayed and the new project will be created. For anextensionTypethat does have amoduleTypeorcustomExtensionRepo(e.g., "Module", "Persona Bar", "*Custom"), a prompt will be displayed to select the desiredmoduletypeor enter a validcustomExtensionRepo.
dnn module web-formsdnn *custom https://github.com/<user|org>/<repo>.gitNone of these are case sensitive. Extension types and module types with spaces in the name can be wrapped in quotes or hyphenated.
- Authentican System (authentication-system)
- Connector (connector)
- Container (container)
- Core Language Pack (core-language-pack)
- Extension Language Pack (extension-language-pack)
- JavaScript Library (javascript-library)
- Library (library)
- Module (module)
- MVC (mvc)
- Razor 3 (razor-3)
- SPA (spa)
- Web Forms (web-forms)
- Persona Bar (persona-bar)
- Angular (angular)
- AngularJS (angularjs)
- HTML (html)
- React (react)
- Vue (vue)
- Provider
- Scheduled Job (scheduled-job)
- Theme Object (theme-object)
- Theme (theme)
- Web API (web-api)
- Widget (widget)
*Custom (*custom)
For front-end projects, including the --install or -i option will automatically run yarn (yarn install) or npm install once the starter repository is cloned. The use of yarn or npm will be chosen based on your environment's configuration (yarn will take preferrence if installed).
Coming soon at dnndocs.com
