From 95fec551c34d6e09d9042c61bc45cc4397801711 Mon Sep 17 00:00:00 2001 From: Yann Renaudin Date: Thu, 20 Jul 2017 17:46:38 -0400 Subject: [PATCH] feat(CLI): Add CLI basic feature to handle project creation --- packages/cli/README.md | 6 ++++++ packages/cli/createTsLib.js | 24 ++++++++++++++++++++++ packages/cli/index.js | 1 + packages/cli/package.json | 40 +++++++++++++++++++++++++++++++++++++ 4 files changed, 71 insertions(+) create mode 100644 packages/cli/README.md create mode 100644 packages/cli/createTsLib.js create mode 100644 packages/cli/index.js create mode 100644 packages/cli/package.json diff --git a/packages/cli/README.md b/packages/cli/README.md new file mode 100644 index 0000000..c48ba17 --- /dev/null +++ b/packages/cli/README.md @@ -0,0 +1,6 @@ +# create-ts-lib + +This package includes the global command for [scaffolding your TypeScript Library](https://github.com/emyann/typescript-webpack-starter).
+Please refer to its documentation: + +* [Getting Started](https://github.com/emyann/typescript-webpack-starter/blob/master/README.md) – How to create a new lib. \ No newline at end of file diff --git a/packages/cli/createTsLib.js b/packages/cli/createTsLib.js new file mode 100644 index 0000000..778259e --- /dev/null +++ b/packages/cli/createTsLib.js @@ -0,0 +1,24 @@ +'use strict'; + +const validateProjectName = require('validate-npm-package-name'); +const chalk = require('chalk'); +const commander = require('commander'); +const fs = require('fs-extra'); +const path = require('path'); + +const packageJson = require('./package.json'); + +let projectName; + +const program = new commander.Command(packageJson.name) + .version(packageJson.version) + .arguments('') + .usage(`${chalk.green('')}`) + .action(name => { + projectName = name; + }) + .on('--help', () => { + console.log(` Only ${chalk.green('')} is required.`); + console.log(); + }) + .parse(process.argv); \ No newline at end of file diff --git a/packages/cli/index.js b/packages/cli/index.js new file mode 100644 index 0000000..8fd0cea --- /dev/null +++ b/packages/cli/index.js @@ -0,0 +1 @@ +require('./createTsLib'); \ No newline at end of file diff --git a/packages/cli/package.json b/packages/cli/package.json new file mode 100644 index 0000000..d133303 --- /dev/null +++ b/packages/cli/package.json @@ -0,0 +1,40 @@ +{ + "name": "create-ts-lib", + "version": "0.0.1", + "description": "Create your TypeScript module with no nuild configuration", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/emyann/typescript-webpack-starter.git" + }, + "keywords": [ + "webpack", + "javascript", + "typescript", + "nodejs", + "es2015", + "es6", + "npm", + "npm-package", + "webpack-server", + "karma", + "karma-jasmine", + "jasmine", + "unit-test" + ], + "author": "emyann", + "license": "MIT", + "bugs": { + "url": "https://github.com/emyann/typescript-webpack-starter/issues" + }, + "homepage": "https://github.com/emyann/typescript-webpack-starter#readme", + "dependencies": { + "chalk": "^2.0.1", + "commander": "^2.11.0", + "semver": "^5.3.0", + "validate-npm-package-name": "^3.0.0" + } +}