{"_id":"@c4312/matcha","_rev":"5-765cf06b5b1d198cf65f63f2fbef6c56","name":"@c4312/matcha","dist-tags":{"latest":"1.3.1"},"versions":{"1.0.0":{"name":"@c4312/matcha","version":"1.0.0","description":"A caffeine driven, simple command line for benchmarking","main":"index.js","bin":{"matcha":"dist/index.js"},"repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"homepage":"https://github.com/connor4312/matcha#readme","scripts":{"prepublishOnly":"npm run compile","compile":"tsc","watch":"tsc --watch","test:fmt":"prettier --list-different \"src/**/*.ts\" \"*.md\"","fmt":"prettier --write \"src/**/*.ts\" \"*.md\""},"author":{"name":"Connor Peet","email":"connor@peet.io"},"license":"MIT","dependencies":{"benchmark":"^2.1.4","chalk":"^3.0.0","microtime":"^3.0.0","minimist":"^1.2.0"},"devDependencies":{"@types/benchmark":"^1.0.31","@types/microtime":"^2.1.0","@types/minimatch":"^3.0.3","@types/minimist":"^1.2.0","@types/node":"^12.12.21","prettier":"^1.19.1","typescript":"^3.7.3"},"prettier":{"printWidth":100,"singleQuote":true,"trailingComma":"all"},"gitHead":"876f68176b17e4745f36d9d57eb75fd4cf95d783","_id":"@c4312/matcha@1.0.0","_nodeVersion":"10.16.3","_npmVersion":"6.13.4","_npmUser":{"name":"connor.peet","email":"connor@peet.io"},"dist":{"integrity":"sha512-yrf8sQQmjoDBM7xlHoH8Cx4icSfwq0O6raQVBw4Pdlckcy83qf3NK2QXWIEF5UKG3miT4yYt1z8j4wWnkn/M7A==","shasum":"deebb16ea1e379b4de6a5163a5bf78ffcbcc807a","tarball":"https://registry.npmjs.org/@c4312/matcha/-/matcha-1.0.0.tgz","fileCount":18,"unpackedSize":23049,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/9zsCRA9TVsSAnZWagAABScQAJX6metqoZjJtA6+DIw3\nKXlz12QU55+vAUx7+IKcUPrnXP8Nwd50Mwd1gVeNC0hNt7guUzwU5BTpDv5h\n85x8XsdAFFv6nUpaTOJ0CWsp/7rOOE54Miqqegea4ndUhBolcAwlLERyYurk\nMxk4fYGMvo+KyPY6Pu2upCvNTmpUHGjivaRN2hFinW+Age+fECKxfq6Dgp7U\n7IeBVruQ146fgduY95ufj71dfFs9XiBST3eLxfti+gyFncfPy+S66n5k2N10\nO+h5ctvCSFEjQ5iOEBO1iD3NSiw8+JVja0qZ6og9WfsozmDHrPnVvGLdGvfb\n+71yUN5McpqkFvisytswaKwWM/w9uhSzIOzwHN1SzNt9FU+8YUU56gfcngvw\nKxIswN+9Ef/gzE7EN3qxIb7AaOEA8VU/8MCb1OkEuZQrl19XsQRprEOkU77+\ng/R8Gb/OViGkDDl2bqbUQ6msDBud9dQP3WIOP87MdY4YL3laZcEfQzSRqY2Q\n4h6Q8jMHt7G+m+wsek8Vg6b2vdzaI3KZTgd8FWo2FVYfBeJK/NnyhcDsNrNQ\nWHszXga1i1sYooIPHgKS2VR6WHw+BibP5OVh0nMeCxnNJZV+QjI4Ne92oZ5t\n3eqmFJHLENbP/8Rl4kMwA6DFoysJvOHa3AdQzS1k8o0LOxtGD6vQ2IClmwQh\nQpBn\r\n=Z/03\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF9d390vQp83J624s155Qrhqs82UfQX8GWDLrcwjEqtrAiEA8QHKPAOm1bJwU2cCd4LxlrNAlbBKHs/bgbBk73NsmC4="}]},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/matcha_1.0.0_1577049324226_0.10020617574787138"},"_hasShrinkwrap":false},"1.1.0":{"name":"@c4312/matcha","version":"1.1.0","description":"A caffeine driven, simple command line for benchmarking","main":"dist/index.js","bin":{"matcha":"dist/cli.js"},"repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"homepage":"https://github.com/connor4312/matcha#readme","scripts":{"prepublishOnly":"npm run compile","compile":"tsc","watch":"tsc --watch","test:fmt":"prettier --list-different \"src/**/*.ts\" \"*.md\"","test:unit":"mocha dist/**/*.test.js","fmt":"prettier --write \"src/**/*.ts\" \"*.md\""},"author":{"name":"Connor Peet","email":"connor@peet.io"},"license":"MIT","dependencies":{"benchmark":"^2.1.4","chalk":"^3.0.0","commander":"^4.1.0","microtime":"^3.0.0"},"devDependencies":{"@types/benchmark":"^1.0.31","@types/chai":"^4.2.7","@types/commander":"^2.12.2","@types/minimist":"^1.2.0","@types/mocha":"^5.2.7","@types/node":"^12.12.21","chai":"^4.2.0","mocha":"^7.0.0","prettier":"^1.19.1","typescript":"^3.7.3"},"prettier":{"printWidth":100,"singleQuote":true,"trailingComma":"all"},"gitHead":"9932d2b4e6e73baebea66266a2dee82001c3cf0d","_id":"@c4312/matcha@1.1.0","_nodeVersion":"12.11.1","_npmVersion":"6.11.3","_npmUser":{"name":"connor.peet","email":"connor@peet.io"},"dist":{"integrity":"sha512-d2mqHW03vT7f1VunDiY68xB0iThvPcVNUPjlq4vKAh9cCJy9kq+FxUOzLW8WItJ5kC5WQAER8BmOE/appfnsxg==","shasum":"665f396f8d1c2f421c70796f697522739712e848","tarball":"https://registry.npmjs.org/@c4312/matcha/-/matcha-1.1.0.tgz","fileCount":35,"unpackedSize":46710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGXbNCRA9TVsSAnZWagAA1UMP+wSnjC0JtGjF2gQJf1qt\n5Oi/fWfNQ1t4yIG0a1HMdNXIiB0zdolbNpgKGD9BHHp0fDoePqPrT5lt8b2F\nMbQvW9HhF3svRmBot3K2qhNCanLEiLDOBwFLraOxWMvIZ4PKetqa46Ko29TO\nAtdfpjfpDeCe1Ja6PiMMqIZPHmBnOO8yEhv6vDB13o4gnSi4p0ChYpiRcY9R\nGai1UYVVqun73sD76NxGtXDolSEt49lxh9ReL76F9zxJpCfHmDI+ft81n/s3\nnv3k9w43q2s/MMTHowFasNvLA+295xu45fIl/lSq4xvGy2kFdFjh21mI14y1\nKfPFJyzJirotytTzYGn1G2z/DtkzUbReslg7u6IdJhQTKwkLRTDJFNTR86mE\ny/K3Hkn5LZb6gC2DNSbZ+0g2t7YmfjONY3Z7q2SqYPaXO4JaOrs3dq0HIDh+\ngUx2XagHVYDYm3J3xTqrzyr3VnbwryQ6y4GgIrENQE3mwBlM0Y4lb+BpMGf4\nVLMOYxbAJHuiIHeosbAiZkDBcp8Z/aLQ1PlY4iXBjQGNsEcLxgLRfTGL43bL\nI2paK/iWWox0rNA/efamUGaN0afiv0bSAqtkcf0j+yxB7el33RV5bnu2PthF\nfZ3oc/nKWeZ/I9/mIZhBWp+zqHWI9YsNwvjcg1CRtc1ZBzKM7rBvxFlnSUuV\n4Rjb\r\n=P+uT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID3mpSHscDyJhxda7xfbUMSTdOkc0iHr3u6lGdvvnLoFAiA4HT7jNPXb/KmSw7gG/gTEPqvVW6vC0i0Oiniry6ICnw=="}]},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/matcha_1.1.0_1578727117326_0.25420909516740253"},"_hasShrinkwrap":false},"1.2.0":{"name":"@c4312/matcha","version":"1.2.0","description":"A caffeine driven, simple command line for benchmarking","main":"dist/index.js","bin":{"matcha":"dist/cli.js"},"repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"homepage":"https://github.com/connor4312/matcha#readme","scripts":{"prepublishOnly":"npm run compile","compile":"tsc","watch":"tsc --watch","test:fmt":"prettier --list-different \"src/**/*.ts\" \"*.md\"","test:unit":"mocha dist/**/*.test.js","test":"npm run test:unit && npm run test:fmt","fmt":"prettier --write \"src/**/*.ts\" \"*.md\""},"author":{"name":"Connor Peet","email":"connor@peet.io"},"license":"MIT","dependencies":{"benchmark":"^2.1.4","chalk":"^3.0.0","commander":"^4.1.0","microtime":"^3.0.0"},"devDependencies":{"@types/benchmark":"^1.0.31","@types/chai":"^4.2.7","@types/commander":"^2.12.2","@types/minimist":"^1.2.0","@types/mocha":"^5.2.7","@types/node":"^12.12.21","chai":"^4.2.0","mocha":"^7.0.0","prettier":"^1.19.1","typescript":"^3.7.3"},"prettier":{"printWidth":100,"singleQuote":true,"trailingComma":"all"},"gitHead":"ebbc7603d28dadb0647df218c91b383fc6c10bae","_id":"@c4312/matcha@1.2.0","_nodeVersion":"12.11.1","_npmVersion":"6.11.3","_npmUser":{"name":"connor.peet","email":"connor@peet.io"},"dist":{"integrity":"sha512-4skJ5WBGn7n0NyLVFOG8H0IqnLoU467jpBITkLyUsmC0aMmmdKrmMUiWW8Uqki3v6eVPG+P6ytLI27TkQoNcqA==","shasum":"49f517fa98c6445f301baac41377340e2eda35b7","tarball":"https://registry.npmjs.org/@c4312/matcha/-/matcha-1.2.0.tgz","fileCount":47,"unpackedSize":57887,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGlXUCRA9TVsSAnZWagAAaCQP/izYRJza2r9ykFQKo5Hb\n2SKPN3hgSu18bX4xZghh0+Qa3AMN/uXpryUubXWqQVOJAqS9+HOnY0zlvqeI\nmnIpghCcwtIEFscHAuvkEh6lA5aWKPR/d6dCSn9UUTE07e8vvtIL+sJvVSR+\nhEtESbZmnsBeiJ7yk+/4jFKFxpCauuOhBbBqcVdRJuEDdkbLVMT9C77NNAI2\nBmhi9DR6DEKfJwRMp5pPuJUvqn3NXdss/BNPJqp4j9Krhf9OeBGDxOBid7et\n04ueg3j0xdKUa6b3xNTWOWYF5N53drtZttLQo/sJWoVSI/TezoZwAG3EUE2T\noR0Oc/zAMcCWaCOXIpGQDJT3dGxjDBTUyvSE9N1IR5XCfmo+jp7D+g7GS+RL\n2gpUuidipocfMDnGhkkilJs6K2QpvlpSzMi8d4FA7pGjWXKGjjH7P6A0hihG\n4Df2qp72JBs9bprSPmFDkjDyUBYCpDQNyvTwSAaoik5spiZt3/vmxVuyB/Py\nX+P1DH7Bg8S0bKzCZh0elGRsJiDkZ6Nwgc+MauG5nzmp91DlkAtPsYgmeUnr\nsyYydWCZhXctWLm1a8yaY2d1ffRXOBqgrnt112rRCI3PB2IUq1KP4Ku5+E0M\nNpeLIsojoHwTIeEiVH4OaSpozh5KdagrDKtJ5GUeDVCRS7OyrFFfkGQe8Mtb\nIrR+\r\n=h/Ui\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBrOI+4NSYEXOfIuf4x0B3oBld91CF6GxIoDZdJKjZKrAiEA9/O49CN1pbGKtkkgy9cuqrX37qSaBfRJjVIYe2glhqo="}]},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/matcha_1.2.0_1578784212253_0.32531707385273667"},"_hasShrinkwrap":false},"1.3.0":{"name":"@c4312/matcha","version":"1.3.0","description":"A caffeine driven, simple command line for benchmarking","main":"dist/index.js","bin":{"matcha":"dist/cli.js"},"repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"homepage":"https://github.com/connor4312/matcha#readme","scripts":{"prepublishOnly":"npm run compile","compile":"tsc","watch":"tsc --watch","test:fmt":"prettier --list-different \"src/**/*.ts\" \"*.md\"","test:unit":"mocha dist/**/*.test.js","test":"npm run test:unit && npm run test:fmt","fmt":"prettier --write \"src/**/*.ts\" \"*.md\""},"author":{"name":"Connor Peet","email":"connor@peet.io"},"license":"MIT","dependencies":{"benchmark":"^2.1.4","chalk":"^3.0.0","commander":"^4.1.0","microtime":"^3.0.0"},"devDependencies":{"@types/benchmark":"^1.0.31","@types/chai":"^4.2.7","@types/commander":"^2.12.2","@types/minimist":"^1.2.0","@types/mocha":"^5.2.7","@types/node":"^12.12.21","chai":"^4.2.0","mocha":"^7.0.0","prettier":"^1.19.1","typescript":"^3.7.3"},"prettier":{"printWidth":100,"singleQuote":true,"trailingComma":"all"},"gitHead":"68ec2892f796c556747227866c23a2e03217e5e9","_id":"@c4312/matcha@1.3.0","_nodeVersion":"12.14.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-U7ALJyPmN3vFJG7BdnWazoSLRqwDNBShq4/EEuNQrimhBq+oZ5eY8KU9o0EisoVn5CFLmQL2oWSlh2lojWaybQ==","shasum":"b797916efe47bd1e74d3c1b2231126100699e06d","tarball":"https://registry.npmjs.org/@c4312/matcha/-/matcha-1.3.0.tgz","fileCount":36,"unpackedSize":60125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezViGCRA9TVsSAnZWagAA65gQAIalGA+VRnwunXnkz4kN\nV6EOVcqMvFJoI8vHtaJdS4ooYesL+bF5zOgohBlLmzOp6gLAmCWtjWXjbU3s\nymvpQCX2rOl7W29KYquL+5b7Li7QO9AYVPSpq0lzB+hyBX/fHyVLfHjm2SCf\n9EMB2yTPrvIXaAEwcsvSmtez0CzXcpob5aK5G7c8NeTE4hwDdU9x0TCoq5TL\nyzEGGee0/VK3j1cvzenH0/HOC9OfDdzAtsekOtOc9DBlCcf9REHbtT+JYn7f\nMrojE4cZtIrAPpyg8kgWr/i+BLYjSbSjjC2ZS09EzMAJqUCxKgMxndMS3q7f\nzUSdLqoEbNrXlrcf+jGWN+WaX3uJhx/0tJPaNEwkuFF4HhW7ozfX9g2+12Uc\nJaAYPwc3LWRjL4C9IucbZp2q1gQzQSjbJz8VC75LSk1K0WjCajA1dZY7Ym/Z\nXh5UoMjmR4j7q3gC2rxRzt2BSYCAHQPTtDMYaotGoFIwQ3OuExqKXa+Qd7am\n+330Ia+4D5WEatk6PDt8Exn8xEE0F/EbvXHQVzu2dbWEN2gvSNKcmgvtLbi9\nmNDT6EcIMq0Z9MsudWahy3VaizQuqVLhna+KmUEho/HecfaRQ30gdO8vXCxm\n/UPor1faC5uqoxzSmjSLt7znvk5v2iLVqdwfIzLsY3MQvfenihgYNuJ7pwyi\nw+E+\r\n=6ESl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWvy1wKonjs18c2tgDwLbackE9KRsGsKoKIJt8F1D4uAIgKGWTx/QCS1DCg8SPSUpxt8EERlcu6yy2QJP8IJaPub8="}]},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"_npmUser":{"name":"connor.peet","email":"connor@peet.io"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/matcha_1.3.0_1590515845974_0.216276100906154"},"_hasShrinkwrap":false},"1.3.1":{"name":"@c4312/matcha","version":"1.3.1","description":"A caffeine driven, simple command line for benchmarking","main":"dist/index.js","bin":{"matcha":"dist/cli.js"},"repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"homepage":"https://github.com/connor4312/matcha#readme","scripts":{"prepublishOnly":"npm run compile","compile":"tsc","watch":"tsc --watch","test:fmt":"prettier --list-different \"src/**/*.ts\" \"*.md\"","test:unit":"mocha dist/**/*.test.js","test":"npm run test:unit && npm run test:fmt","fmt":"prettier --write \"src/**/*.ts\" \"*.md\""},"author":{"name":"Connor Peet","email":"connor@peet.io"},"license":"MIT","dependencies":{"benchmark":"^2.1.4","chalk":"^3.0.0","commander":"^4.1.0","microtime":"^3.0.0"},"devDependencies":{"@types/benchmark":"^1.0.31","@types/chai":"^4.2.7","@types/commander":"^2.12.2","@types/minimist":"^1.2.0","@types/mocha":"^5.2.7","@types/node":"^12.12.21","chai":"^4.2.0","mocha":"^7.0.0","prettier":"^1.19.1","typescript":"^3.7.3"},"prettier":{"printWidth":100,"singleQuote":true,"trailingComma":"all"},"gitHead":"8b7248fbf66a0ffb31a829ce77b313f12e052bb9","_id":"@c4312/matcha@1.3.1","_nodeVersion":"12.14.1","_npmVersion":"6.13.4","dist":{"integrity":"sha512-JfkUCcWH5ez5N9UOEq7qFAbavkaASaGx9mQfmv+XIFrzp3YC08PKVWZfzv+u5kRQVrQmbZ+hLrnyqzEmLLkKlA==","shasum":"49bec1f438847bd4fbec47062bd7a462344a829b","tarball":"https://registry.npmjs.org/@c4312/matcha/-/matcha-1.3.1.tgz","fileCount":52,"unpackedSize":69579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBf6NCRA9TVsSAnZWagAAIoIP/RsOAIN+obkx0dBuBADR\nk5DSYeRqVCDildsd0EYgwL0Xug5B5uhX1VGRdJzqJISRatHVnMKyuY7UlNWh\nW6AmChjSY2/lBaF8OvsxNvK2zygEOPPLq6sWs+Z+6V25d+Dk/Zl+cgVmS3yt\nZfJeq3xINF89UvAcY8l6w5ndKperAX9G0bnl9luqIn3IOr+dx7SZj5+qqdPe\nUk7x8wUeU5tU7WdZG1i1qSgXZwwuREqVoYrU+xsZqZuJdKACKYzhi5IcMNla\n1TZ0qmeXcCxNvyfVtrxDR2og2gQM1P9AVlkPV9H/SSgl87kryBNYG5H8Lsjc\nYp4nfASAAsCbifzZCfg6g7MtuNaQ6/D1SOkOYeLuKBCfDmLIyaPmZLnOrjJc\n38sz6RI/SnXqxKc1YE/bw8GZhIIF5uSqT6ROvu1fLRoaSj7aAopjBkxwg+mT\n55g090M+Z+QlN0D14mR2RsHJi0/r/F4y5LCa+wzuIZGa09imhexLGQDLcLzb\nhxNr5YiC4MRfnzblAVnGDca4zTfgBuD5x4mHLETxF0Fb2sSdzl59ZqXQuDod\n7D9wl1KJRz5r5hLcr2uATxv7VuerPsMIXUk9ceJrHudvI9SoafCS8YaLp3R6\nevhlQ+PVghy4lO/UPiPNlEui/yQhiaAvWFARsyEKb/IfmPqkyhqF1zcUzGpg\nsZB2\r\n=iWDB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDWAQCOhzzBitZ/j8a1u5R9uodMQKhlWZIrHgVSOg8FXgIhANfSpIo4NXUmov9KyE5z0pI7T0r2hdWbhznh9WlUuc6H"}]},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"_npmUser":{"name":"connor.peet","email":"connor@peet.io"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/matcha_1.3.1_1594228364692_0.22633460674140315"},"_hasShrinkwrap":false}},"time":{"created":"2019-12-22T21:15:24.006Z","1.0.0":"2019-12-22T21:15:24.378Z","modified":"2022-04-04T21:25:22.999Z","1.1.0":"2020-01-11T07:18:37.516Z","1.2.0":"2020-01-11T23:10:12.498Z","1.3.0":"2020-05-26T17:57:26.143Z","1.3.1":"2020-07-08T17:12:44.816Z"},"maintainers":[{"name":"connor.peet","email":"connor@peet.io"}],"description":"A caffeine driven, simple command line for benchmarking","homepage":"https://github.com/connor4312/matcha#readme","repository":{"type":"git","url":"git+https://github.com/connor4312/matcha.git"},"author":{"name":"Connor Peet","email":"connor@peet.io"},"bugs":{"url":"https://github.com/connor4312/matcha/issues"},"license":"MIT","readme":"# @c4312/matcha\n\nA modernization of [`matcha`](https://github.com/logicalparadox/matcha), powered by Benchmark.js. I found Matcha super useful over the years, but it has [issues with accuracy](https://github.com/logicalparadox/matcha/issues/22), doesn't support promises or work with Node 12, and is apparently abandoned. We fix those here!\n\n![Demonstration video of the matcha command line](./demo.gif)\n\n## Usage\n\n```\nnpm install --global @c4312/matcha\n```\n\nThen you can create a file and `bench` functions, for instance if you have a **my-bench.js**:\n\n```js\nconst arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\n\nbench('forEach', () => arr.forEach(v => (sum += v)));\n\nbench('for-of loop', () => {\n  for (const v of arr) {\n    sum += v;\n  }\n});\n```\n\nThen, simply run:\n\n```\nmatcha my-bench.js\n```\n\n### Command-Line Options\n\n```\nUsage: matcha [options] <file>\n\nOptions:\n  -V, --version              output the version number\n  -g, --grep <pattern>       Run a subset of benchmarks (default: \"\")\n  -R, --reporter <reporter>  Specify the reporter to use (default: \"pretty\")\n  --cpu-profile [pattern]    Run on all tests, or those matching the regex.\n                             Saves a .cpuprofile file that can be opened in the Chrome devtools.\n  --reporters                Display available reporters\n  -h, --help                 output usage information\n```\n\n## Async Benchmarks\n\nYou can return promises from your benchmarks and take callbacks:\n\n```js\nbench('plain fs', callback => readFile(__filename, callback));\nbench('promisifed fs', async () => await readFileAsync(__filename));\n```\n\n## Settings\n\nYou can set any [benchmark.js option](https://benchmarkjs.com/docs#options) via the `set()` helper. You can also have async setup and teardown methods.\n\n```js\n// in a promise:\nset('setup', async () => {\n  await waitUntilPageIsLoaded();\n});\n\n// or a callback:\nset('teardown', callback => closePage(callback));\n\n// as well as base options:\nset('maxTime', 1);\nset('minSamples', 2000);\n```\n\n## Nested Suites\n\nMultiple benchmark suites can be nested. Options, including setup and teardown, are inherited, chained, and overridden.\n\n```js\nset('setup', globalPrepare);\n\n// globalPrepare() run before:\nbench('a', runA);\n\n// globalPrepare() and nestedPrepare() run before\n// these, and they run for 1 second at most:\nsuite('nested', () => {\n  set('setup', nestedPrepare);\n  set('maxTime', 1);\n  bench('b', runB);\n});\n```\n\n## API\n\nYou can use the Matcha API programmatically:\n\n```js\nconst { GatherReporter, benchmark } = require('@c4312/benchmark');\n\n// A reporter that just stores results in an array:\nconst reporter = new GatherReporter();\n\nawait benchmark({\n  reporter,\n  prepare(api) {\n    // The standard API as described above!\n    api.bench('myFunction', fn);\n\n    // This function may be async and return a promise,\n    // which we'll wait for before we start benchmarking.\n  },\n});\n\nfor (const result of reporter.results) {\n  console.log('Benchmark', result.name, 'runs at', result.hz, 'ops/sec');\n}\n```\n","readmeFilename":"readme.md"}