@dojo/cli-create-widget

Command to scaffold a Dojo widget library

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
03Jul 30, 2021Aug 15, 2017Minified + gzip package size for @dojo/cli-create-widget in KB

Readme

cli-create-widget

Build Status

codecov npm version

A Dojo CLI command that creates a Dojo 2 widget template with an optional custom element descriptor.

Usage

To use @dojo/cli-create-widget, install the project globally along side dojo cli:

npm install -g @dojo/cli-create-widget

Run using:

dojo create [widget] --name <widget name> --styles <CSS path> --tests <test path>

Features

@dojo/cli-create-widget generates an opinionated skeleton component structure for use within a Dojo 2 application. The location where styles and tests are created can be customized using the --styles and --tests arguments respectively. By default, the following folder structure will be created:

MyComponent.ts
styles/
styles/myComponent.m.css
styles/myComponent.m.css.d.ts,
tests/unit/MyComponent.ts

It's also possible to generate a Custom Element descriptor by passing the --component boolean argument. This will generate a widget that includes the @customElement decorator with an empty template object ready for configuration, please see the @dojo/widget-core readme for more information.

How do I contribute?

We appreciate your interest! Please see the Dojo 2 Meta Repository for the Contributing Guidelines.

Code Style

This repository uses prettier for code styling rules and formatting. A pre-commit hook is installed automatically and configured to run prettier against all staged files as per the configuration in the projects package.json.

An additional npm script to run prettier (with write set to true) against all src and test project files is available by running:

npm run prettier

Installation

To start working with this package, clone the repository and run npm install.

In order to build the project run grunt dev or grunt dist.

Testing

Test cases MUST be written using Intern using the Object test interface and Assert assertion interface.

90% branch coverage MUST be provided for all code submitted to this repository, as reported by istanbul’s combined coverage results for all supported platforms.

To test locally run:

grunt test

Licensing information

© 2018 JS Foundation. New BSD license.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.