npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

license-report-recursive

v6.7.0

Published

Wrapper around license-report to add recursion

Downloads

3,287

Readme

license report tool with recursion

Version License: MIT based on

Generate a license report of the projects dependencies, optionally with recursion.

Extends the license-report tool. The documentation for license-report is valid for this tool too. Changes can be found below.

Usage

Enable recursion:

cd your/project/
license-report-recursive --recurse

Generate json tree output:

license-report-recursive --recurse --output=tree

General notes

  • As this program iterates over all dependencies and the dependencies of the dependencies, it will take quite a while to finish when used on non-trivial projects (may take several minutes to finish!).
  • The program looks for packages in nested node_modules directories. If more than 1 version is installed (in different nesting levels), all installed versions are reported.
  • The program adds the field 'alias' to the configuration and uses it in the default field list. 'alias' is the alias name of a dependency (for more details see the 'npm-install' documentation; an example is 'babel-register > babel-core > babel-register').
  • The program adds the field 'dependencyLoop' to the configuration (not used it in the default field list). 'dependencyLoop' is true, if this package is part of a dependency loop (i.e. dependency is indirectly a dependant of itself).
    In case of dependency loops, the 'requires' field of the package, resulting in a dependency loop, contains an entry with 'dependencyLoop: true'.

Show detailed progress during report generation (Debug information)

By setting the debug environment variable as follows, detailed log information is generated during the report generation and send to the stderr output stream. The reported information includes the nesting level and the currently processed package.

For more information see the documentation of the debug package on npm.

export DEBUG=license-report-recurse

or for windows environment

set DEBUG=license-report-recurse

Changelog

For list of changes and bugfixes, see CHANGELOG.md.

Contributing

The CHANGELOG.md is generated with standard-changelog (using the command npm run release).

To make this possible the commit messages must follow the conventional commits specification.

<type>: <description>

<optional body>

The following is the list of supported types of commit messages:

  • build: changes that affect build components like build tool, ci pipeline, dependencies, project version, etc...
  • chore: changes that aren't user-facing (e.g. merging branches).
  • docs: changes that affect the documentation.
  • feat: changes that introduce a new feature.
  • fix: changes that patch a bug.
  • perf: changes which improve performance.
  • refactor: changes which neither fix a bug nor add a feature.
  • revert: changes that revert a previous commit.
  • style: changes that don't affect code logic, such as white-spaces, formatting, missing semi-colons.
  • test: changes that add missing tests or correct existing tests.

To ensure the syntax of commit messages commitlint is used, triggered by husky. This feature must be activated with npm run activate-commitlint once for every local clone of license-report.

License

Copyright © 2024 Bernhard Pottler.

Distributed under the MIT License. See LICENSE for more information.