2.0.1 • Published 4 years ago

create-projext v2.0.1

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

create-projext

Travis Coveralls github David David

Setup projext using npm init or yarn create

Introduction

This application allows anyone to use the npm init and yarn create "shortcut tasks" to initialise a new project with projext.

Usage

If you are using npm:

npm init projext [project-name] [options]

And if you are using Yarn:

yarn create projext [project-name] [options]

Both the project-name and the options are optional.

And that's all, the application will ask you a few questions about the features you want and the settings for your targets; after that, it will write the files and install the dependencies so you can start coding right away.

Options

The application has several options that allows you to speed up and customize the whole process:

OptionDescription
-r, --rollupUse Rollup as build engine
-c, --configCreate a configuration file for your targets
-q, --quickCreate a single target project ASAP
-n, --nodeThe target of quick mode must be for NodeJS
-l, --libraryThe target of quick mode must be a library
-t, --typeScriptThe target of quick mode must use TypeScript
-f, --flowThe target of quick mode must use Flow
--reactInstall the React plugin
--aureliaInstall the Aurelia plugin (only available for webpack)
--angularjsInstall the AngularJS plugin

Development

NPM/Yarn Tasks

TaskDescription
yarn testRun the project unit tests.
yarn run lintLint the modified files.
yarn run lint:fullLint the project code.
yarn run docsGenerate the project documentation.
yarn run todoList all the pending to-do's.

Testing

I use Jest with Jest-Ex to test the project. The configuration file is on ./.jestrc, the tests and mocks are on ./tests and the script that runs it is on ./utils/scripts/test.

Linting

I use ESlint to validate all our JS code. The configuration file for the project code is on ./.eslintrc and for the tests on ./tests/.eslintrc (which inherits from the one on the root), there's also an ./.eslintignore to ignore some files on the process, and the script that runs it is on ./utils/scripts/lint.

Documentation

I use ESDoc to generate HTML documentation for the project. The configuration file is on ./.esdocrc and the script that runs it is on ./utils/scripts/docs.

To-Dos

I use @todo comments to write all the pending improvements and fixes, and Leasot to generate a report. The script that runs it is on ./utils/scripts/todo.