@penseapp/npm-package-template
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

npm-package-template

npm version Tag Status License Status Issues Status

This is a template file that you can extend to create your own NPM package!

How to use

Clone this repository on any folder

cd ~/my-folder/some-folder
git clone git@github.com:penseapp/npm-package-template.git

Open the package.json file and edit these props:

Prop name Description Example
name The same package name registered on NPM @penseapp/my-package-name
version The first version of package (It will increment automatically later 1.0.0
description It'll appear on NPM/Github This package to A,B,C

Open the README.MD and update your package instructions

NPM

Create an account or login on NPM

Go to the packages section. (Here you need to choose to create on a personal account or organization)

For example:

https://www.npmjs.com/settings/penseapp/packages

Follow the tutorial: https://jamescalmus.medium.com/how-to-publish-a-scoped-npm-package-for-your-organization-767af1c99b9f

NPM AUTH TOKEN

The package uses https://github.com/mikeal/merge-release to deploy to NPM

We need to configure the NPM_AUTH_TOKEN on github secrets because the .github/workflows/deploy.yml has the call of the token

Generate a new token: https://docs.npmjs.com/creating-and-viewing-access-tokens

Copy and add to your github secrets with the NPM_TOKEN key

Github

Create a new repository on github

Create a manual tag and release (Only the first time) on the same version of the packge.json and publish the release

On this example, the version is 1.0.0

Delete this "default GIT" folder

rm -rf .git

and add the files to your repo

git add .
git commit -m 'chore: first version'
git branch -M master
git remote add origin git@github.com:penseapp/npm-package-template.git
git push -u origin master

If everything is ok, the github should start the pipeline deploy

How to install the package

TODO: -[] Replace the @penseapp/npm-package-template to your package name

yarn add @penseapp/npm-package-template

or

npm i @penseapp/npm-package-template

Github actions

This package uses the workflows/pipelines on the .github folder to trigger github actions pipelines to automatize deploy on NPM and chore things.

  • Deploy automatically on NPM
  • Bump package.json version automatically
  • Bump github version automatically
  • Bump npm version automatically
  • Label the PR's automatically.

Commitlint

-[] Enforce the commitlint

Discord integration

This package has a custom integration to Discord server. If you want to receive notifications on your preferred channel, follow the steps bellow.

If not, delete or comment the Discord notification pipelines on .github/workflows/deploy.yml github action file.

Open Discord -> select the channel -> Click on configuration -> Integrations -> View webhooks -> New webhook

Create a new webhook called Discord notification and add on Github secrets with a name of DISCORD_CHANNEL_WEBHOOK, like the GIF bellow:

Peek 2021-06-02 22-21

Now, you will receive the notifications on the desired discord channel.

Package Sidebar

Install

npm i @penseapp/npm-package-template

Weekly Downloads

4

Version

1.1.0

License

MIT

Unpacked Size

14.9 kB

Total Files

23

Last publish

Collaborators

  • joaomantovani