Gleb Bahmutov
@bahmutov
JavaScript ninja, image processing expert, software quality fanatic. Sr Director of Engineering at Mercari US. MS MVP for OSS work, GitHub Star.
138
Published Tools
7,944
Total Stars
23,532,785
Weekly Downloads
4,952
GitHub Followers
1,280
Public Repos
100/100
Avg Security
Published Tools
138 Skillsacross 2 categoriesGitHub Actions
Starts server, waits for URL, then runs test command; when the tests end, shuts down server
bahmutov
A JSONSchema validator that uses code generation to be extremely fast
GitHub Actions
Split Cypress specs across parallel CI machines for speed
bahmutov
Checks if the current version of your package would break dependent projects
bahmutov
Gets you the Cypress test command log as JSON on failure
bahmutov
Jest-like snapshot feature for the rest of us + data-driven testing
bahmutov
Automatically install pre-commit / pre-git hooks for your npm modules.
bahmutov
Smarter snapshot utility for Mocha and BDD test runners
bahmutov
Quickly run NPM script by prefix without typing the full name
bahmutov
Adds console.table method that prints an array of objects as a table in console
bahmutov
Single CI command to deploy new version to Zeit Now, including e2e tests and alias switch
bahmutov
Client-side buttons to run a single test or skip it for Cypress test runner
GitHub Actions
A way to re-run Cypress commands until a predicate function returns true
bahmutov
Caches resolved paths in module require to avoid Node hunting for right module. Speeds up app load.
Quickly adds TypeScript spec support to Cypress
bahmutov
Exploring how one can generate product demo videos from Cypress tests
bahmutov
My custom eslint rules in addition to the ones provided at http://eslint.org/
bahmutov
User space solution for picking Cypress tests to run
Bundle Cypress specs using esbuild
bahmutov
A little Cypress.io plugin for waiting for network to be idle before continuing with the test
bahmutov
Checks filenames to be committed against a library of filename rules to prevent sensitive files in Git
bahmutov
Runs a given command with additional environment settings for simple local development
GitHub Actions
Cypress command for flexible test data setup
bahmutov
Returns all commit messages between 2 versions of an NPM module
GitHub Actions
Reloads Cypress when one of the watched files changes
bahmutov
Run Cypress tests using Playwright and Playwright tests using Cypress
bahmutov
Quickly chain method calls, property access and functions in natural left to right expression
GitHub Actions
Find Cypress spec files using the config settings
bahmutov
Checks CircleCI environment before publishing successful build using semantic-release
bahmutov
Cypress plugin that adds "extends" support to the configuration file
bahmutov
Poor man's semantic release utility. Let the CI do the `npm publish` step after the build passes
bahmutov
Stream terminal output with ansi codes into nicely formatted HTML
bahmutov
Utilities for checking the coverage produced by NYC against extra or missing files
bahmutov
Simple commit message wizard and validator; works with commitizen and pre-git
bahmutov
A Cypress plugin for reporting individual command timings
bahmutov
Returns a promise with new versions higher than given for a npm module
bahmutov
A custom Cypress command to wrap the remote debugger protocol low level command
bahmutov
Fast checking of top level dependencies based on version numbers
bahmutov
Safely update your dependencies using TravisCI cron jobs
bahmutov
Easily email the test results after Cypress is done
bahmutov
Set LaunchDarkly feature flags from Cypress tests
bahmutov
Forms release changelog and posts a note to each referenced issues after semantic release publishes a new module version
bahmutov
It is like a real backend but magically faster and better
bahmutov
Cypress DOM snapshots and consistent image diffing in the cloud
bahmutov
semantic-release plugin checking if the new semantic release is breaking dependent projects
bahmutov
My version of Cypress code coverage plugin
bahmutov
Finds an installed tool in node_modules/.bin folders from current up to the git root
bahmutov
A plugin to increase the video resolution for cypress run
bahmutov
Check if the package is being installed by another package
bahmutov
Given a Mocha / Cypress spec file, returns the list of suite and test names
bahmutov
Conventional commit message wizard and validator; works with commitizen and pre-git
How to test HTTP form submission with file input using Cypress - a hack
bahmutov
Cypress CLI wrapper where you can specify the total number of expected tests
bahmutov
Overwrite the cy.log command to print to both the Command Log and to the terminal
bahmutov
A little script to update README file with dependency version badge
bahmutov
Fetches any property from package.json using short prefix `jso dep` is same as `cat package.json | grep dependencies`
bahmutov
Post messages in Slack channels when specific Cypress tests and specs fail
GitHub Actions
Add timestamps to Cypress tests, error screenshots, and Command Log
bahmutov
Prints all environment variables that start with given string
bahmutov
A little Cypress plugin for setting GitHub commit status
A simple local visual testing for Cypress users
bahmutov
Utility to find webpack settings in react-scripts and other situations
bahmutov
Adds package version to the built file before semantic release publishes it
bahmutov
Returns all environment variables with sensitive values hidden, great for logs
bahmutov
Plugin for semantic-release that only allows publishing from a specific NodeJS version
bahmutov
Cypress utility for mocking a module inside a Webpack bundle
bahmutov
Launch on CI a particular Cypress test using grep or grep tags
bahmutov
Simple GitHub release changelog from public semantic commits
bahmutov
Derives a JSON schema from an object and then uses it to validate other objects
bahmutov
Banner text across your terminal. Great separator for tests or long running operations.
bahmutov
A little utility for triggering CircleCI pipelines for a given branch with fallback to the default branch
bahmutov
Orders tests for a source code change based on code coverage analysis.
bahmutov
Given an object returns list of all possible paths to its properties
bahmutov
Require Node module and immediately remove it from module cache to force loading again next time
bahmutov
Stubs child_process.spawn for a single command; cleans up afterwards. Perfect for testing.
bahmutov
TodoMVC app rendering function implemented using virtual-dom
bahmutov
Change working dir and return a promise, a stack of folders is maintained to jump back
GitHub Actions
Utilities for making Cypress plugin configuration easier
bahmutov
Given (Mocha) test object, walks it up to give you list of context names
bahmutov
Given a list of semantic commit changes, returns the largest one
bahmutov
Checks if the NPM script commands in the package.json are all colon separated
bahmutov
Returns true if CI is building a pull request from a remote fork
bahmutov
Simple help and sanity checks for Node CLI bin scripts
bahmutov
Finds the caller test function that called this library by inspecting the source file
bahmutov
Tells if the current Mocha execution is running only some tests that use .only
bahmutov
Returns list of commits since last tag with types relevant to users: major, minor, etc
bahmutov
Given a list of strings, finds common prefix and returns shorter string `prefix[foo, bar, baz]`
bahmutov
Checks a given object against a given set of specifications to keep you from writing boilerplate tests.
bahmutov
Test project showing how to semantically publish multiple commits to NPM from GitLab