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

doop-cli

v1.3.0

Published

Doop CLI helper to perform unit based operations on the current project

Downloads

31

Readme

Doop-CLI

Command Line Interface for the Doop Framework.

  Usage: doop [options] [command]


  Commands:

    config                    List Doop config
    delete [unit]             Delete an exising unit from the project
    gentest-schema [unit...]  Generate Mocha/Chai tests from unit schema files
    glob [glob]               Glob for files within units and perform operations on them
    install [unit...]         Install one or more units from the upstream Doop repo
    list                      List units installed for the current project
    make [unit]               Create a unit skeleton from the given name (plurals for unit names are recommended)
    merge [unit]              Attempt to merge a unit with the upstream Doop repo
    setup                     Configure Doop-Cli
    help [cmd]                display help for [cmd]

  Perform a Doop operation on the currently active project

  Options:

    -h, --help     output usage information
    -V, --version  output the version number

Getting Started

Install globally with NPM:

npm install -g doop-cli

Setup the Doop-Cli

doop setup

Navigate to your project root and, to list installed units in the project, run:

doop list

Configuration

The ~/.dooprc file is read for additional Doop settings. This file will be created with a basic layout when running doop setup for the first time.

Run the doop config command for the current configuration.

| Config path | Type | Default | Description | |---------------------------|--------|------------------|----------------------------------------------------------------------------------------| | globs.projectRoot | string | ./package.json | The glob to use to identify the project root | | globs.units | string | ./units/*/ | Where to find a projects Units | | paths.doopCli | string | Programatic | The file path to the Doop CLI file (automatically determined by default) | | paths.doop | string | Null | The path on disk of the master Doop repo | | paths.project | string | Programatic | The path on disk of the current project (automatically determined by default) | | aliases | Object | {default: 'list', ls: 'list', i: 'install', 'rm': 'delete'} | An object containing a list of valid alias commands | | tools | Object | {meld: 'meld {{{project.path}}} {{{doop.path}}}'} | An object of available tools (used mainly to merge) | | list.changes.maxEdited | number | 3 | The maximum number of files to show per unit before compressing the list display | | list.changes.maxCreated | number | 3 | As with list.changes.maxEdited but for created files |

Aliases

Doop supports command line aliasing similar to Git. By specifying an alias you can provide a shortcut to the full command without constant repetion.

  • The meta default alias specifies what command to actually run if the CLI is run with no arguments
  • All commands are assumed to assume a doop prefix unless the alias begins with an exclaimation mark (to run the command as is)

For example setting the following in your ~/.dooprc file will configure a selection of aliases:

[aliases]
default=list
ls=list
i=install
rm=delete
schm=glob *.schm.js
status=!git status
  • The default parameter tells Doop what to run if no command is specified (i.e. you run the CLI as just doop with no arguments).
  • Running doop ls will actually run doop list
  • Running doop status will run git status. The exclaimation mark prefix indicates that the command should be run as-is without an automatic doop prefix
  • Running doop schm will run doop glob *.schm.js files. Note that this will also carry any command line arguments automatically. For example doop schm -e will actually run doop glob *.schm.js -e