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

concurrently-await

v1.2.0

Published

Run commands concurrently with option to wait for a condition to match before moving to next command

Downloads

263

Readme

concurrently-await

GitHub release Build Status

Run multiple commands concurrently with the option to supply a condition to pass before running the next command.

Table of contents

Installation

npm i -D concurrently-await

or

yarn -D concurrently-await

Usage

Remember to surround separate commands with quotes:

concurrently-await "command1 arg await --<condition> value" "command2 arg await --<condition> value"

In package.json, escape quotes:

"start" : "concurrently-await \"command1 arg await --<condition> value\" \"command2 arg await --<condition> value\""

Conditions

Conditions are optional, but must be seperated from the command and its arguments by the wait seperator

Condition types

| Type | Description | Value type | Example | | -------- | ------------------------------------------------------------------------------------------------------------------ | ---------- | ------------------------------ | | delay | Wait for a given number number of milliseconds before executing the next command | number | --delay 500 | | quiet | Wait until the command provided stops logging for a given number of milliseconds before executing the next command | number | --quiet 3000 | | includes | Wait until the command logs a message that includes the provided value (case insensitive) | string | --includes done | | matches | Wait until the command logs a message that exactly matches the provided value | string | --matches Finished Compiling |

Options

names

You can provide a list of custom names to be used in prefix template for logging, otherwise the prefix will just be the index of the command.

concurrently-await --names ui,server "command1 arg await --<condition> value" "command2 arg await --<condition> value"

name-seperator

The character to split names on, the default is ,. Example usage:

concurrently-await --names ui|server --name-seperator | "command1 arg await --<condition> value" "command2 arg await --<condition> value"

wait-seperator

The default wait seperator is await but this may conflict with your command. You can set your own wait seperator by setting the wait seperator option:

concurrently-await --wait-seperator ~> "command1 arg ~> --<condition> value" "command2 arg ~> --<condition> value"