English | 简体中文
The best third party JS|TS
library scaffold. By forking or cloning the repository, you can complete the basic framework for building a new library.
The library that based jslib-base can be shared to the jsmini platform
- Coded in ES6+ or TypeScript, easily compile and generate production code
- Integrated babel-runtime (Default set to closed)
- Third parties rely on automatic injection(Tree shaking)
- Supports multi environment, including default browsers, Node, AMD, CMD, Webpack, Rollup, Fis and so on.
- Integrated code style lint(eslint|tslint).
- Integrated unit test environment(mocha).
- Integrated test coverage(istanbul).
- Integrated continuous integration tool travis-ci
- Supports banner
- Supports one-key renaming.
- Supports sideEffects
- Integrated Issue template
- Integrated jsmini
Note: When export
and export default
are not used at the same time, there is the option to
turn on legacy mode
. Under legacy mode
, the module system can be compatible with IE6-8
. For more information on legacy mode,
please see rollup supplemental file.
Unit tests guarantee support on the following environment:
IE | CH | FF | SF | OP | IOS | Android | Node |
---|---|---|---|---|---|---|---|
6+ | 29+ | 55+ | 9+ | 50+ | 9+ | 4+ | 4+ |
Note: Compiling code depend on ES5, so you need import es5-shim to compatible with
IE6-8
, here is a demo
├── demo - Using demo
├── dist - Compiler output code
├── doc - Project documents
├── src - Source code directory
├── test - Unit tests
├── CHANGELOG.md - Change log
└── TODO.md - Planned features
Using npm, download and install the code.
$ npm install --save jslib-base
For node environment:
var base = require('jslib-base');
For webpack or similar environment:
import base from 'jslib-base';
For requirejs environment:
requirejs(['node_modules/jslib-base/dist/index.aio.js'], function (base) {
// do something...
})
For browser environment:
<script src="node_modules/jslib-base/dist/index.aio.js"></script>
How to switch JS
and TS
-
srctype
andscripts
inpackage.json
-
require
file oftest/test.js
-
require
file oftest/browser/index.html
For the first time to run, you need to install dependencies firstly.
$ npm install
To build the project:
$ npm run build
To run unit tests:
$ npm test
Note: The browser environment needs to be tested manually under
test/browser
Modify the version number in package.json, modify the version number in README.md, modify the CHANGELOG.md, and then release the new version.
$ npm run release
Publish the new version to NPM.
$ npm publish
For renaming project, you need change fromName
and toName
in rename.js
, then run npm run rename
, this command will auto renaming names for below files:
- The messages in README.md
- The messages in package.json
- The messages in config/rollup.js
- The repository name in test/browser/index.html
- Library name in demo/demo-global.html
jsmini
other