CLI to retrieve a changelog from a set of dependencies
Last updated 2 months ago by schibstedspain .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @s-ui/changelog 
SYNC missed versions from official npm registry.


CLI to retrieve a changelog from a set of dependencies.


The main aim of this package is to build a changelog file with all the last changes you get in your last installation within your project. Dependencies are retrieved by its scope in the node_modules folder, so you can customize the scopes to get the changelog data from.

Moreover, sui-changelog package runs a npm shrinkwrap in order to get the differences in the dependencies, and you can optionally run a phoenix command if you want to have a clean install before building your changelog.


Basic usage

Install node@11 with npm@6 in your env and run the following CLI command:

$ npx @s-ui/changelog

Or, if you want to save it in your project development dependencies:

$ npm install @s-ui/changelog --save-dev
$ sui-changelog

Optionally running a phoenix

If you feel more confortable having a clean install of your dependencies before retrieving the changelog, just set the -p, --phoenix option:

$ sui-changelog -p

Adding more scopes

By default, sui-changelog works only with @s-ui scoped packages, so if you want to add more scopes to your changelog, just add them in your project package.json file, the same way as the example below:

  "config": {
    "sui-changelog": {
      "scopes": ["@my-awesome-scope", "@another-scope"]

Retrieving data from private repositories

If you know you have some private respositories inside your set of dependencies, you should add a GitHub access token as an environment variable (as GITHUB_TOKEN) to make it work. Such token has to be added into your ~/.bash_profile file (or ~/.profile, or ~/.bashrc) like the following example:


You can get more information in this link to get the token: https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line. If it's not provided, the changelog data for such package will be ignored.


After triggering the CLI command sui-changelog we'll get new changes in our project. Firstly, current package version (package.json file) will be updated. Then, if it's the first time a new file named CHANGELOG.md will be added to your project, but if you already got it, a new hunk of changes will be added at the top of your file.

├── node_modules
    ├── @my-awesome-scope
    │   └── my-awesome-package // Package last changes will be retrieved from.
    ├── @another-scope
    │   └── another-scope-package // Other package last changes will be retrieved from.
    ├── eslint
    └── react
├── package.json // Modified with the new package version.
└── CHANGELOG.md // New or modified with the last changes.

Current Tags

  • 1.4.0                                ...           latest (2 months ago)

4 Versions

  • 1.4.0                                ...           2 months ago
  • 1.3.0                                ...           4 months ago
  • 1.2.0                                ...           8 months ago
  • 1.1.0                                ...           8 months ago
Today 4
This Week 4
This Month 4
Last Day 0
Last Week 0
Last Month 4
Dependencies (8)
Dev Dependencies (5)
Dependents (0)

Copyright 2014 - 2016 © taobao.org |