sindresorhus
@sindresorhus
250
Published Tools
0
Total Stars
0
Weekly Downloads
Published Tools
250 Skillsacross 4 categoriesinsight
sindresorhus
Understand how your tool is being used by anonymously reporting usage metrics to Google Analytics or Yandex.Metrica
p-queue
sindresorhus
Promise queue with concurrency control
cacheable-lookup
sindresorhus
A cacheable dns.lookup(…) that respects TTL
ua-string
sindresorhus
Get the user agent of a recent Chrome version to pretend to be a browser in network requests
terminal-query
sindresorhus
Send escape sequences to the terminal and read back responses
type-fest
sindresorhus
A collection of essential TypeScript types
presentable-error
sindresorhus
Make presentable errors
chalk
sindresorhus
Terminal string styling done right
loud-rejection
sindresorhus
Make unhandled promise rejections fail loudly instead of the default silent fail
eslint-plugin-unicorn
sindresorhus
More than 100 powerful ESLint rules
eslint-plugin-ava
sindresorhus
ESLint rules for AVA
gulp-plugin-extras
sindresorhus
Useful utilities for creating Gulp plugins
add-asset-webpack-plugin
sindresorhus
Dynamically add an asset to the Webpack graph
eslint-config-xo
sindresorhus
ESLint shareable config for XO
parse-sse
sindresorhus
Parse Server-Sent Events (SSE) from a Response
conf
sindresorhus
Simple config handling for your app or module
gzip-size
sindresorhus
Get the gzipped size of a string or buffer
srcset
sindresorhus
Parse and stringify the HTML `<img>` srcset attribute
np
sindresorhus
A better `npm publish`
package-config
sindresorhus
Get namespaced config from the closest package.json
tsd
sindresorhus
Check TypeScript type definitions
create-dmg
sindresorhus
Create a good-looking DMG for your macOS app in seconds
run-jxa
sindresorhus
Run JXAcode and get the result
p-pipe
sindresorhus
Compose promise-returning & async functions into a reusable pipeline
vinyl-paths
sindresorhus
Get the file paths in a `vinyl` stream
noop-stream
sindresorhus
Create a readable Node.js stream that produces no data (or optionally blank data) or a writable stream that discards data
gulp-debug
sindresorhus
Debug Vinyl file streams to see what files are run through your Gulp pipeline
p-event
sindresorhus
Promisify an event by waiting for it to be emitted
text-extensions
sindresorhus
List of text file extensions
is-text-path
sindresorhus
Check if a file path is a text file
boxen
sindresorhus
Create boxes in the terminal
index-to-position
sindresorhus
Convert a string index to its line and column position
copy-text-to-clipboard
sindresorhus
Copy text to the clipboard in modern browsers (0.2 kB)
throttleit
sindresorhus
Throttle a function to limit its execution rate
subsume
sindresorhus
Embed data in other data and easily extract it when needed
ora
sindresorhus
Elegant terminal spinner
yoctocolors-cjs
sindresorhus
CommonJS version - The smallest and fastest command-line coloring package on the internet
terminal-link
sindresorhus
Create clickable links in the terminal
clipboardy
sindresorhus
Access the system clipboard (copy/paste)
get-stream
sindresorhus
Get a stream as a string, Buffer, ArrayBuffer or array
binary-extensions
sindresorhus
List of binary file extensions
ink-big-text
sindresorhus
Awesome text component for Ink
is-binary-path
sindresorhus
Check if a file path is a binary file
wrap-ansi
sindresorhus
Wordwrap a string with ANSI escape codes
chunkify
sindresorhus
Split an iterable into evenly sized chunks
get-urls
sindresorhus
Get all URLs in a string
cli-truncate
sindresorhus
Truncate a string to a specific width in the terminal
log-update
sindresorhus
Log by overwriting the previous output in the terminal. Useful for rendering progress bars, animations, etc.
get-east-asian-width
sindresorhus
Determine the East Asian Width of a Unicode character
detect-indent
sindresorhus
Detect the indentation of code
ink
sindresorhus
React for CLI
ink-link
sindresorhus
Link component for Ink
display-notification
sindresorhus
Display a notification (macOS)
to-valid-identifier
sindresorhus
Convert a string to a valid JavaScript identifier
boxen-cli
sindresorhus
Create boxes in the terminal
@inkjs/ui
sindresorhus
Collection of customizable UI components for CLIs made with Ink
make-dir
sindresorhus
Make a directory and its parents if needed - Think `mkdir -p`
get-emails
sindresorhus
Get all email addresses in a string
env-editor
sindresorhus
Get metadata on the default editor or a specific editor
yocto-queue
sindresorhus
Tiny queue data structure
ink-gradient
sindresorhus
Gradient color component for Ink
function-timeout
sindresorhus
Make a synchronous function have a timeout
taskkill
sindresorhus
Wrapper for the Windows `taskkill` command. Ends one or more tasks or processes.
is-heroku
sindresorhus
Check if your code is running on Heroku
tasklist
sindresorhus
Wrapper for the Windows `tasklist` command. Returns a list of apps and services with their Process ID (PID) for all tasks running on either a local or a remote computer.
is-travis
sindresorhus
Check if your code is running on Travis
lock-system
sindresorhus
Lock your system
clipboard-image
sindresorhus
Get and set images on the macOS clipboard
term-img
sindresorhus
Display images in terminals using the iTerm inline image protocol
image-dimensions
sindresorhus
Get the dimensions of an image
image-type
sindresorhus
Detect the image type of an ArrayBuffer/Uint8Array
file-type
sindresorhus
Detect the file type of a file, stream, or data
is-image
sindresorhus
Check if a file path is an image
terminal-image
sindresorhus
Display images in the terminal
is-gif
sindresorhus
Check if a Buffer/Uint8Array is a GIF image
gravatar-url
sindresorhus
Get the URL to a Gravatar image from an identifier, such as an email
is-png
sindresorhus
Check if a Buffer/Uint8Array is a PNG image
open
sindresorhus
Open stuff like URLs, files, executables. Cross-platform.
electron-context-menu
sindresorhus
Context menu for your Electron app
is-jpg
sindresorhus
Check if a Buffer/Uint8Array is a JPEG image
ink-image
sindresorhus
Image component for Ink
pngquant-bin
sindresorhus
`pngquant` wrapper that makes it seamlessly available as a local dependency
imagemin-webp
sindresorhus
WebP imagemin plugin
capture-website-cli
sindresorhus
Capture screenshots of websites from the command-line
capture-website
sindresorhus
Capture screenshots of websites
env-paths
sindresorhus
Get paths for storing things like data, config, cache, etc
xdg-basedir
sindresorhus
Get XDG Base Directory paths
electron-store
sindresorhus
Simple data persistence for your Electron app or module - Save and load user settings, app state, cache, etc
byte-counter
sindresorhus
Count bytes passing through a stream
temp-write
sindresorhus
Write data to a random temporary file
is-blob
sindresorhus
Check if a value is a `Blob`
delay
sindresorhus
Delay a promise a specified amount of time
clone-regexp
sindresorhus
Clone and modify a RegExp instance
make-asynchronous
sindresorhus
Make a synchronous function asynchronous by running it in a worker
emittery
sindresorhus
Simple and modern async event emitter
get-own-enumerable-keys
sindresorhus
Like `Object.keys()` but also includes symbols
got
sindresorhus
Human-friendly and powerful HTTP request library for Node.js
uint8array-extras
sindresorhus
Useful utilities for working with Uint8Array (and Buffer)
to-readable-stream
sindresorhus
Convert a value to a ReadableStream
normalize-url
sindresorhus
Normalize a URL
is-generator-fn
sindresorhus
Check if something is a generator function
ky-universal
sindresorhus
Use Ky in both Node.js and browsers
set-immediate-shim
sindresorhus
Simple setImmediate shim
crypto-hash
sindresorhus
Tiny hashing module that uses the native crypto API in Node.js and the browser
electron-serve
sindresorhus
Static file serving for Electron apps
time-span
sindresorhus
Simplified high resolution timing
escape-goat
sindresorhus
Escape a string for use in HTML or the inverse
write-json-file
sindresorhus
Stringify and write JSON to a file atomically
super-regex
sindresorhus
Make a regular expression time out if it takes too long to execute
os-locale
sindresorhus
Get the system locale
js-types
sindresorhus
List of JavaScript types
string-length
sindresorhus
Get the real length of a string - by correctly counting astral symbols and ignoring ansi escape codes
fn-name
sindresorhus
Get the name of a named function
pretty-bytes
sindresorhus
Convert bytes to a human readable string: 1337 → 1.34 kB
configstore
sindresorhus
Easily load and save config without having to think about where and how
cpy
sindresorhus
Copy files
execa
sindresorhus
Process execution for humans
copy-file
sindresorhus
Copy a file
@sindresorhus/do-not-disturb
sindresorhus
Control the macOS `Do Not Disturb` feature
cows
sindresorhus
ASCII cows 🐮
vinyl-file
sindresorhus
Create a vinyl file from an actual file
pastel
sindresorhus
Framework for effortlessly building Ink apps
yn
sindresorhus
Parse yes/no like values
pure-prompt
sindresorhus
Pretty, minimal and fast ZSH prompt
get-windows
sindresorhus
Get metadata about the active window and open windows (title, id, bounds, owner, URL, etc)
chalk-template
sindresorhus
Terminal string styling with tagged template literals
pupa
sindresorhus
Simple micro templating
gulp-template
sindresorhus
Render/precompile Lodash/Underscore templates
chalk-cli
sindresorhus
Terminal string styling done right
todomvc-app-css
sindresorhus
CSS for TodoMVC apps
strip-indent
sindresorhus
Strip leading whitespace from each line in a string
ow
sindresorhus
Function argument validation for humans
p-memoize
sindresorhus
Memoize promise-returning & async functions
query-string
sindresorhus
Parse and stringify URL query strings
url-parse-lax
sindresorhus
Lax URL parsing with support for protocol-less URLs and IPs
find-up-simple
sindresorhus
Find a file or directory by walking up parent directories — Zero dependencies
new-github-release-url
sindresorhus
Generate a URL for opening a new GitHub release with prefilled tag, body, and other fields
new-github-issue-url
sindresorhus
Generate a URL for opening a new GitHub issue with prefilled title, body, and other fields
camelcase-keys
sindresorhus
Convert object keys to camel case
has-yarn
sindresorhus
Check if a project is using Yarn
replace-in-files-cli
sindresorhus
Replace matching strings and regexes in files
supports-hyperlinks
sindresorhus
Detect whether a terminal supports hyperlinks
camelcase
sindresorhus
Convert a dash/dot/underscore/space separated string to camelCase or PascalCase: `foo-bar` → `fooBar`
ansi-styles
sindresorhus
ANSI escape codes for styling strings in the terminal
ansi-escapes
sindresorhus
ANSI escape codes for manipulating the terminal
decamelize
sindresorhus
Convert a camelized string into a lowercased one with a custom separator: unicornRainbow → unicorn_rainbow
slice-ansi
sindresorhus
Slice a string with ANSI escape codes
indent-string
sindresorhus
Indent each line in a string
yosay
sindresorhus
Tell Yeoman what to say
strip-final-newline
sindresorhus
Strip the final newline character from a string or Uint8Array
split-on-first
sindresorhus
Split a string on the first occurance of a given separator
hasha
sindresorhus
Hashing made simple. Get the hash of a buffer/string/stream/file.
meow
sindresorhus
CLI app helper
ink-testing-library
sindresorhus
Utilities for testing Ink apps
decamelize-keys
sindresorhus
Convert object keys from camel case
into-stream
sindresorhus
Convert a string/promise/array/iterable/asynciterable/buffer/typedarray/arraybuffer/object into a stream
@sindresorhus/base62
sindresorhus
Encode & decode strings, bytes, and integers to Base62
binary-version
sindresorhus
Get the version of a binary in semver format
leven
sindresorhus
Measure the difference between two strings using the Levenshtein distance algorithm
humanize-string
sindresorhus
Convert a camelized/dasherized/underscored string into a humanized one: `fooBar-Baz_Faz` → `Foo bar baz faz`
yocto-spinner
sindresorhus
Tiny terminal spinner
titleize
sindresorhus
Capitalize every word in a string: `unicorn cake` → `Unicorn Cake`
domify
sindresorhus
Turn a HTML string into DOM elements, cross-platform
screenfull
sindresorhus
Simple wrapper for cross-browser usage of the JavaScript Fullscreen API, which lets you bring the page or any element into fullscreen.
component-type
sindresorhus
Type assertions aka less-broken `typeof`
djb2a
sindresorhus
DJB2a non-cryptographic hash function
gulp-changed
sindresorhus
Only pass through changed files
dom-mutations
sindresorhus
Observe changes to the DOM using an async iterable — A nicer API for MutationObserver
environment
sindresorhus
Check which JavaScript environment your code is running in at runtime: browser, Node.js, Bun, etc
ky
sindresorhus
Tiny and elegant HTTP client based on the Fetch API
is-stream
sindresorhus
Check if something is a Node.js stream
path-key
sindresorhus
Get the PATH environment variable key cross-platform
decompress-response
sindresorhus
Decompress a HTTP response if needed
yoctodelay
sindresorhus
Delay a promise a specified amount of time
is-fullwidth-code-point
sindresorhus
Check if the character represented by a given Unicode code point is fullwidth
slash
sindresorhus
Convert Windows backslash paths to slash paths
globals
sindresorhus
Global identifiers from different JavaScript environments
callsites
sindresorhus
Get callsites from the V8 stack trace API
has-flag
sindresorhus
Check if argv has a specific flag
is-unicode-supported
sindresorhus
Detect whether the terminal supports Unicode
unique-string
sindresorhus
Generate a unique random string
cli-cursor
sindresorhus
Toggle the CLI cursor
npm-run-path
sindresorhus
Get your PATH prepended with locally installed binaries
unicorn-magic
sindresorhus
Some useful utilities I often need
detect-newline
sindresorhus
Detect the dominant newline character of a string
string-width
sindresorhus
Get the visual width of a string - the number of columns required to display it
globby
sindresorhus
User-friendly glob matching
fetch-extras
sindresorhus
Useful utilities for working with Fetch
responselike
sindresorhus
A response-like object for mocking a Node.js HTTP response stream
ansi-regex
sindresorhus
Regular expression for matching ANSI escape codes
supports-color
sindresorhus
Detect whether a terminal supports color
locate-path
sindresorhus
Get the first path that exists on disk of multiple paths
merge-descriptors
sindresorhus
Merge objects using their property descriptors
log-symbols
sindresorhus
Colored symbols for various log levels. Example: `✔︎ Success`
is-interactive
sindresorhus
Check if stdout or stderr is interactive
is-in-ci
sindresorhus
Check if the process is running in a Continuous Integration (CI) environment
is-redirect
sindresorhus
Check if a number is a redirect HTTP status code
xo
sindresorhus
JavaScript/TypeScript linter (ESLint wrapper) with great defaults
eslint-config-xo-typescript
sindresorhus
ESLint shareable config for TypeScript to be used with eslint-config-xo
to-double-quotes
sindresorhus
Convert matching single-quotes to double-quotes: I 'love' unicorns → I "love" unicorns
to-single-quotes
sindresorhus
Convert matching double-quotes to single-quotes: `I "love" unicorns` → `I 'love' unicorns`
eslint-config-xo-react
sindresorhus
ESLint shareable config for React to be used with eslint-config-xo
eslint-config-xo-space
sindresorhus
ESLint shareable config for XO with 2-space indent
@sindresorhus/string-hash
sindresorhus
Get the hash of a string
p-locate
sindresorhus
Get the first fulfilled promise that satisfies the provided testing function
p-limit
sindresorhus
Run multiple promise-returning & async functions with limited concurrency
path-type
sindresorhus
Check if a path is a file, directory, or symlink
gulp-jsvalidate
sindresorhus
Validate JavaScript code and report possible syntax errors
redent
sindresorhus
Strip redundant indentation and indent the string
strip-json-comments
sindresorhus
Strip comments from JSON. Lets you use comments in your JSON files!
path-exists
sindresorhus
Check if a path exists
cli-boxes
sindresorhus
Boxes for use in the terminal
p-timeout
sindresorhus
Timeout a promise after a specified amount of time
clean-stack
sindresorhus
Clean up error stack traces
p-map
sindresorhus
Map over promises concurrently
get-stdin
sindresorhus
Get stdin as a string or Uint8Array
pify
sindresorhus
Promisify a callback-style function
is-path-inside
sindresorhus
Check if a path is inside another path
onetime
sindresorhus
Ensure a function is only called once
mimic-function
sindresorhus
Make a function mimic another one
run-applescript
sindresorhus
Run AppleScript and get the result
package-json
sindresorhus
Get metadata of a package from the npm registry
import-fresh
sindresorhus
Import a module while bypassing the cache
filename-reserved-regex
sindresorhus
Regular expression for matching reserved filename characters
define-lazy-prop
sindresorhus
Define a lazily evaluated property on an object
p-try
sindresorhus
`Start a promise chain
load-json-file
sindresorhus
Read and parse a JSON file
read-pkg
sindresorhus
Read a package.json file
@sindresorhus/merge-streams
sindresorhus
Merge multiple streams into a unified stream
prepend-http
sindresorhus
Prepend `https://` to humanized URLs like sindresorhus.com and localhost
filenamify
sindresorhus
Convert a string to a valid safe filename
parent-module
sindresorhus
Get the path of the parent module
is-port-reachable
sindresorhus
Check if a local or remote port is reachable
multimatch
sindresorhus
Extends `minimatch.match()` with support for multiple patterns
is-absolute-url
sindresorhus
Check if a URL is absolute
p-retry
sindresorhus
Retry a promise-returning or async function
hasha-cli
sindresorhus
Hashing made simple. Get the hash of text or stdin.
a11y
sindresorhus
Runs an accessibility audit against a URL
cpy-cli
sindresorhus
Copy files
pageres
sindresorhus
Capture website screenshots
is-safe-filename
sindresorhus
Check if a filename is safe to use in a path join operation
clear-module
sindresorhus
Clear a module from the cache
max-timeout
sindresorhus
The max amount of milliseconds you can pass to `setTimeout()`
gulp-rev
sindresorhus
Static asset revisioning by appending content hash to filenames: unicorn.css => unicorn-d41d8cd98f.css
@sindresorhus/df
sindresorhus
Get free disk space info from `df -kP`
pokemon
sindresorhus
Get Pokémon names
prototype-properties
sindresorhus
List of prototype properties for JavaScript types
sec
sindresorhus
Convert a time string to seconds: `'00:22:17'` → `1337`
move-file-cli
sindresorhus
Move a file on the command-line
md5-hex
sindresorhus
Create a MD5 hash with hex encoding