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

beidou-cli

v2.3.0

Published

Beidou cli tools

Downloads

19

Readme

beidou-cli

Beidou application cli tool

Install

Global install beidou-cli if you need to init beidou boilerplate, use local install otherwise.

  • global

    $ npm install beidou-cli -g
  • local

    $ npm install beidou-cli --save

Usage

Add beidou to package.json scripts:

{
  "scripts": {
    "dev": "beidou dev",
    "debug": "beidou debug",
    "test": "beidou test",
    "cov": "beidou cov",
    "start": "beidou start",
    "stop": "beidou stop",
    "build": "beidou build"
  }
}

Command

All the commands support these specific v8 options:

  • --debug
  • --inspect
  • --harmony*
  • --es_staging
$ beidou [command] --debug --es_staging

if process.env.NODE_DEBUG_OPTION is provided (WebStorm etc), will use it as debug options.

init command

Init beidou boilerplate project

$ beidou init

options

  • --tag=next init boilerplate project with npm next tag, used for alpha or beta version.
  • --force force to overwrite directory.

Choose boilerplate

$ beidou init
? Please select a boilerplate type (Use arrow keys)
❯ Simple - Simple beidou isomorphic app boilerplate
  Redux - Redux beidou isomorphic app boilerplate
  CSS-MODULES - css-modules beidou isomorphic app boilerplate
  Advanced - Advanced beidou isomorphic app boilerplate

dev

Start dev cluster on local env, it will start a master, an agent and a worker.

$ beidou dev

options

  • --baseDir application's root path, default to process.cwd().
  • --port server port, default to 6001.
  • --cluster worker process number, skip this argvs will start only 1 worker, provide this without value will start cpu count worker.
  • --sticky start a sticky cluster server, default to false.

debug

Debug beidou app with V8 Inspector Integration.

automatically detect the protocol, use the new inspector when the targeted runtime >=7.0.0 .

use inspector-proxy to proxy worker debug, so you don't need to worry about reload.

$ beidou debug --debug-port=9229 --proxy=9999

options

  • all beidou dev options is accepted.
  • --proxy=9999 worker debug proxy port.

test

Using [mocha] with [co-mocha] to run test.

[power-assert] is the default assert library, and [intelli-espower-loader] will be auto required.

$ beidou test [files] [options]
  • files is optional, default to test/**/*.test.js
  • test/fixtures, test/node_modules is always exclude.

auto require test/.setup.js

If test/.setup.js file exists, it will be auto require as the first test file.

test
  ├── .setup.js
  └── foo.test.js

options

You can pass any mocha argv.

  • --require require the given module
  • --grep only run tests matching
  • --timeout milliseconds, default to 30000
  • --full-trace display the full stack trace, default to false.
  • see more at https://mochajs.org/#usage

environment

Environment is also support, will use it if options not provide.

You can set TESTS env to set the tests directory, it support [glob] grammar.

TESTS=test/a.test.js beidou test

And the reporter can set by the TEST_REPORTER env, default is spec.

TEST_REPORTER=doc beidou test

The test timeout can set by TEST_TIMEOUT env, default is 30000 ms.

TEST_TIMEOUT=2000 beidou test

cov

Using [istanbul] to run code coverage, it support all test params above.

Coverage reporter will output text-summary, json and lcov.

options

You can pass any mocha argv.

  • -x add dir ignore coverage, support multiple argv
  • --prerequire prerequire files for coverage instrument, you can use this options if load files slowly when call mm.app or mm.cluster
  • also support all test params above.

environment

You can set COV_EXCLUDES env to add dir ignore coverage.

$ COV_EXCLUDES="app/plugins/c*,app/autocreate/**" beidou cov

start

Start beidou server at production mode.

$ beidou start [options] [baseDir]
# Usage
# beidou start --port=7001
# beidou start ./server
  • Arguments
    • baseDir - directory of application, default to process.cwd().
  • Options
    • port - listening port, default to process.env.PORT, if unset, egg will use 6001 as default.
    • title - process title description, use for kill grep, default to egg-server-${APP_NAME}.
    • workers - numbers of app workers, default to process.env.EGG_WORKERS, if unset, egg will use os.cpus().length as default.
    • daemon - whether run at background daemon mode, don't use it if in docker mode.
    • env - server env, default to process.env.EGG_SERVER_ENV, recommended to keep empty then use framwork default env.
    • stdout - customize stdout file, default to $HOME/logs/master-stdout.log.
    • stderr - customize stderr file, default to $HOME/logs/master-stderr.log.
    • timeout - the maximum timeout when app starts, default to 300s.
    • ignore-stderr - whether ignore stderr when app starts.

stop

Stop beidou gracefull.

Note: if exec without --title, it will kill all egg process.

# stop egg
$ beidou stop [--title=example]
  • Options
    • title - process title description, use for kill grep.

build

Build beidou assets

  • Options
    • target - build target, node or browser(default)

License

MIT