Skip to content

karfau/node-cli-arguments-options

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
arg
 
 
 
 
 
 
 
 
lib
 
 
 
 
 
 
mri
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

node-cli-arguments-options

Comparing available parsers for node cli options and arguments

There are so many options and arguments for picking one of them, so I want to support making a decision based on data.

To goal is something like a mono repo, where the same checks are implemented in an executable way for each approach/lib

What data to collect

Dependencies:

npm run about [pkg ...]: stores all collected information for each package in <pkg>/about.json
(running it again later can change the result, especially when new versions come out)

  • list of dependencies
    • outdated ones
    • size of all packages to download (might be higher then in reality, but it's an indicator)
  • usage inside the packages in this repo
  • usage inside well known and widely used tool

(comparable) Usage Examples:

npm run dump [pkg ...]: stores the output of the same commands for each package <pkg>/dump.json

The commands to execute are in ./dump.json. For this to work the <pkg>/dump.js file needs to be implemented.

Features:

npm run test [pkg ...] verifies the features specified in <pkg>/features.json. Each of these files has to follow the JSON-Schema that is defined in ./features.json. There are inline comments that describe each feature. Feel free to add one to the schema (npm run features will keep all the files in sync)

Ideas

  • code size (to support the feature)
  • execution time (TBD, persisting them is causing to many changes)
  • TBD availability of type definitions (quality/completeness ?)
  • TBD (existing?) score for maintenance/community

Contribute

Run npm i to get started with code changes, it also set's up all the sub folders.

Support is very welcome, please file PRs and issues for

  • a lib to add for comparison (run npm run add <pkg> for a starting point)
  • a metric to add (see about.js that writes to <pkg>/about.json as an example)
  • adding a feature to compare (see ./feature.json for the schema)
  • an idea where to gather data from (file an issue)
  • data visualisation (e.g. some gatsby page that allows comparison/filtering based on the existing data?)
  • ...?

About

Comparing available parsers for node cli options and arguments

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •