https://github.com/matejsvajger/npm-package-foundation
Skeleton for a simple NPM Package with ES2015 support and CI already configured.
https://github.com/matejsvajger/npm-package-foundation
Last synced: 3 months ago
JSON representation
Skeleton for a simple NPM Package with ES2015 support and CI already configured.
- Host: GitHub
- URL: https://github.com/matejsvajger/npm-package-foundation
- Owner: matejsvajger
- License: mit
- Created: 2019-05-09T20:27:29.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-05-09T22:42:16.000Z (about 6 years ago)
- Last Synced: 2025-03-18T11:00:23.230Z (4 months ago)
- Language: JavaScript
- Size: 30.3 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# npm-package-foundation
Skeleton for a simple NPM Package with ES2015 support and CI already configured.
#### Pre-configured development tools
- [
Bublé](https://buble.surge.sh/guide/)
- [ESLint](https://eslint.org/) with [`standard-js` config](https://www.npmjs.com/package/eslint-standard-config)
- [Prettier](https://prettier.io/)
- [Jest](https://jestjs.io/)
- [EditorConfig](https://editorconfig.org/)
#### Pre-configured CI tools
- [
Travis CI](https://travis-ci.org/) continuous integration platform
- [NPM automatic releasing](https://docs.travis-ci.com/user/deployment/npm)
- [Codecov](https://codecov.io/) code coverage reporting
- [ESDoc](https://esdoc.org/)
## Getting started
1. Add this project as `skeleton` remote:
```sh
mkdir my-project && cd my-project
git init
git remote add skeleton https://github.com/matejsvajger/npm-package-foundation.git
git remote set-url skeleton --push "Error: skeleton remote is read-only" # Disable pushing on skeleton
git config remote.skeleton.tagOpt --no-tags # Disable fetching tags on skeleton
git remote add origin
git pull skeleton master --no-tags
git push -u origin master
```2.
- Set initial version (ex: `0.1.0`) in `package.json`
- Set `scriptName` in config of `package.json` for umd builds.3. Replace the following occurrences
- [ ] `matejsvajger/npm-package-foundation` → _your repo slug_
- [ ] `npm-package-foundation` → _your project name_
- [ ] `package-foundation` → _your NPM package name_
- [ ] `Matej Svajger` → _your name_
- [ ] `[email protected]` → _your public email address_
- [ ] `https://matejsvajger.com` → _your website_4. Import project in CI tools:
- [ ] [Travis CI](https://travis-ci.org/)
- [ ] [Codecov](https://codecov.io/)
- [ ] [ESDoc](https://doc.esdoc.org/-/generate.html)5. Add the following environment variables in your new Travis CI project's settings:
- [ ] `NPM_AUTH_TOKEN`: NPM authentication token, used for automatic NPM releasing. See [documentation](https://docs.travis-ci.com/user/deployment/npm).
6. Cleanup `README.md` by removing all documentation related to the skeleton.
## Usage
### Automatic releasing process
> _Note:_ you can try this process safely by releasing an "alpha" version. Ex: 0.1.0-alpha.2
- [ ] Update the package version in `package.json` (ex: `1.2.1`), commit it, and push it.
- [ ] Tag the previously created commit (ex: `v1.2.1`), and push it (`git push --tags`).
- Travis build runs on tagged commit
- New package version is automatically released after tests have passed## License
This project is released under [MIT License](LICENSE.md).
---
## **Note:** the content after this is the actual package documentation (to be edited after cloning).
# npm-package-foundation
[](https://www.npmjs.com/package/package-foundation)
[](https://travis-ci.org/matejsvajger/npm-package-foundation)
[](https://www.npmjs.com/package/package-foundation)[](https://david-dm.org/matejsvajger/npm-package-foundation)
[](https://codecov.io/github/matejsvajger/npm-package-foundation?branch=master)
[](https://doc.esdoc.org/github.com/matejsvajger/npm-package-foundation/)## Installation
Prerequisites: [Node.js](https://nodejs.org/) 8+, **npm** 3+.
npm install --save package-foundation
## Usage
### ES5
var xxx = require('package-foundation').default;
### ES2015+
import xxx from 'package-foundation';
## Contributing
Please refer to the [guidelines for contributing](./CONTRIBUTING.md).
[](https://david-dm.org/matejsvajger/npm-package-foundation?type=dev)
## License
[](LICENSE.md)
---