Skip to content

twalcari/jbr.js

 
 

Repository files navigation

jbr.js – Just a Benchmark Runner

Build status Coverage Status npm version

A simple tool to initialize benchmarking experiments, run them, and analyze their results.

Learn more about how to use jbr here.

Development Setup

(JSDoc: https://rubensworks.github.io/jbr.js/)

This repository should be used by jvr module developers as it contains multiple jbr modules that can be composed. This repository is managed as a monorepo using Lerna.

If you want to develop new features or use the (potentially unstable) in-development version, you can set up a development environment for jbr.

jbr requires Node.JS 12.0 or higher and the Yarn package manager. jbr is tested on OSX, Linux and Windows.

This project can be setup by cloning and installing it as follows:

$ git clone https://github.com/rubensworks/jbr.js.git
$ cd jbr.js
$ yarn install --ignore-engines

Note: npm install is not supported at the moment, as this project makes use of Yarn's workspaces functionality

This will install the dependencies of all modules, and bootstrap the Lerna monorepo. After that, all jbr packages are available in the packages/ folder and can be used in a development environment, such as the main jbr CLI tool.

Furthermore, this will add pre-commit hooks to build, lint and test. These hooks can temporarily be disabled at your own risk by adding the -n flag to the commit command.

Adding a new experiment or hook handler

If you want to add a new experiment, you can create one at packages/experiment-<name>. Similarly, hook handlers can be created at packages/hook-<name>. Other experiment and hook handlers can serve as inspiration for implementation.

In order to test your implementation locally, you can make use of globally linked packages. For this, you can first link jbr as follows:

$ cd packages/jbr
$ yarn link

Within the root of the monorepo directory, you can now execute jbr commands, and refer to locally available experiments and hook handlers that are not available on npm (yet).

If you want these experiments or hook handlers to become available on npm (so others can use them as well), you can contribute them to this repository via a pull requests, and a maintainer can publish them.

License

jbr.js is written by Ruben Taelman.

This code is copyrighted by Ghent University – imec and released under the MIT license.

About

🏋 Just a Benchmark Runner

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.6%
  • Other 0.4%