no-pro provides CPU profiling tools for Node.js.
This repository is a mono-repo, with the following embedded packages:
-
This package is the core runtime function to generate profile data, to be added as instrumentationn to your application.
-
This package provides express-compatible middleware to profile requests sent with a keyed header.
-
This package provides a web app to view profiles.
This repository contains a number of independent packages rooted in the
packages directory - like a lerna repo, but currently
not actually a lerna repo. These packages are referred to below as
"embedded packages".
The root directory contains a package.json which largely just includes
devDependencies used by the embedded packages. Generally, the embedded
packages do not contain any devDependencies.
The downside of this approach is that devDependencies executables are not
directly available, when running in an embedded package's root directory.
To counter this down-side, there are some command-line tools available in the
tools directory, intended to be run from the root directory of the repository,
to perform actions on the embedded packages.
For more info, see the tools/README.md file.
Running npm install on the root directory will do an npm install in each
embedded package, via an npm postinstall script.
Typical development flow when updating a single embedded package:
-
tools/watch-one.js <embedded package>- run the watch command for an embedded project, which watches for changes, runs tests, etc. -
when you're done,
npm run testto run tests for all embedded packages
On occaison, run npm run ncu and tools/version-info.js to keep an eye on
dependencies.
This package is licensed under the MIT license. See the LICENSE.md file for more information.
Awesome! We're happy that you want to contribute.
Please read the CONTRIBUTING.md file for more information.
