From 380407b5e8961ead5fef4821a10ad3926199a8f9 Mon Sep 17 00:00:00 2001 From: PhilKunz Date: Tue, 19 Jul 2016 00:25:31 +0200 Subject: [PATCH] improve README --- README.md | 31 ++++++++++++++----------------- package.json | 2 +- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 6b6cc9a..cbcde6b 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # npmts -Write npm modules with TypeScript without hassle. +Write npm modules with TypeScript without hassle. TypeScript ready. Fully ES6. ## Status [![build status](https://gitlab.com/pushrocks/npmts/badges/master/build.svg)](https://gitlab.com/pushrocks/npmts/commits/master) @@ -36,13 +36,13 @@ Then add it to your package.json's script section to trigger a build: ### Default task execution order -1. Check config in ./npmextra.json (Check out [npmextra](https://www.npmjs.com/package/npmextra)) -1. Clean up from any previous builds (old js files) -1. Transpile TypeScript with **inline sourcemaps** and **declaration files** to ES6 -1. Create TypeDoc Documentation from TypeScript files -1. Instrumentalize transpiled ES6 JavaScript with istanbul and run tests with Mocha +1. **Config:** Check config in ./npmextra.json (Check out [npmextra](https://www.npmjs.com/package/npmextra)) +1. **Clean:** Clean up from any previous builds (old js files) +1. **Transpile:** Transpile TypeScript with **inline sourcemaps** and **declaration files** to ES6 +1. **Documentation:** Create TypeDoc Documentation from TypeScript files +1. **Test:** Babelify ES6 to ES5 on the fly, instrumentalize ES5 JavaScript with istanbul and run tests with Mocha. -#### npmtsextra.json +### npmextra.json the npmts section in npmtsextra.json can be used to configure npmts. ```json @@ -63,20 +63,18 @@ the npmts section in npmtsextra.json can be used to configure npmts. | key | default value | description | | --- | --- | --- | -| `"codecov"` | `true` | if true, coverage data will be uploaded to codecov when running on travis | -| `"docs"` | `{"publish":"false"}` | `{"publish":true, destination:"github"}` lets you control what happens with your module documentation | -| `"mode"` | `"default"` | "default" will do some defualt stuff, "custom" only does what you specify | +| `"mode"` | `"default"` | "default" will do some default stuff, "custom" only does what you specify | | `"tsOptions"` | `{"target":"ES5", "declaration":"true"}` | specify options for tsc | | `"typings"` | `["./ts/typings.json"]` | allows you to specify multiple locations for typings.json to install. This is needed for modules that do not yet bundle typings | | `"cli"` | "false" | some modules are designed to be used from cli. If set to true NPMTS will create a cli.js that wires you dist files up for cli use. | -#### TypeScript +### TypeScript by default npmts looks for `./ts/*.ts` and `./test/test.ts` that will compile to `./dist/*.js` and `./test/test.js` Use commonjs module system for wiring up files. -#### Declaration files +### Declaration files **npmts** also creates an `./dist/index.d.ts` declaration file by default. You can reference it in your package.json like this. @@ -89,6 +87,7 @@ This is in line with the latest TypeScript best practices. You can then import plugins via the TypeScript `import` Syntax and tsc will pick up the declaration file automatically. +## Some notes: #### Typings for third party modules that do not bundle declaration files NPMTS does no longer supports typings.json. Instead use the new TypeScript 2.x approach to typings using the @types/ npm scope. @@ -96,22 +95,20 @@ NPMTS does no longer supports typings.json. Instead use the new TypeScript 2.x a npmts instrumentalizes (using istanbul) the created JavaScript code to create a coverage report. #### Tests -When Typings have been installed, TypeScript + Declaration files have been transpiled and the resulting JS has been instrumentalized, -npmts looks for `.test/test.ts` which will be transpiled to test.js and run with mocha. - Any errors will be shown with reference to their originating source in TypeScript thanks to autogenerated source maps. ## Example Usage in modules: -* [gulp-browser](https://www.npmjs.com/package/gulp-typings) +* [gulp-browser](https://www.npmjs.com/package/gulp-browser) > We will add more options over time. ## Tips and tricks: * Use [npmts-g](https://www.npmjs.com/package/npmts-g) to use globally installed npmts and install npmts locally if no global npmts is available. -* Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and TypeDoc for the module +* Use [npmpage](https://www.npmjs.com/package/npmpage) to create a webpage from coverage reports and TypeDoc for the module * Use [hosttoday/ht-docker-node:npmts](https://hub.docker.com/r/hosttoday/ht-docker-node/) for speedy CI builds +* Use [npmdocker](https://www.npmjs.com/package/npmdocker) for running tests consistently with docker. ## About the authors: [![Project Phase](https://mediaserve.lossless.digital/lossless.com/img/createdby_github.svg)](https://lossless.com/) diff --git a/package.json b/package.json index 73c009c..febdad4 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "npmts", "version": "5.3.23", - "description": "write npm modules with TypeScript", + "description": "Write npm modules with TypeScript without hassle. TypeScript ready. Fully ES6.", "main": "dist/index.js", "bin": { "npmts": "dist/cli.js"