Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
JoshuaKGoldberg
Follow
Focusing

Josh Goldberg JoshuaKGoldberg

Focusing

Sponsors

Organizations

Block or report JoshuaKGoldberg

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user's behavior. Learn more about reporting abuse.

Report abuse
JoshuaKGoldberg/README.md

Hi, I'm Josh!

I'm an open source developer in the web development ecosystem.

I work on projects that help improve code quality, most notably typescript-eslint: a powerful static analysis toolset for JavaScript and TypeScript code. I'm also the author of O'Reilly's Learning TypeScript book, a Microsoft MVP for developer technologies, and a frontend developer at Sentry.


Thanks to my Sponsors

I was an independent maintainer from 2022 through 2025. Nowadays I work on open source in my spare time. My work was and is supported by these wonderful sponsors. They deserve our sincere appreciation and gratitude.

Platinum Sponsors (>=$100/mo) Gold Sponsors (>=$25/mo) Silver Sponsors (>=$10/mo) Bronze Sponsors (>=$5/mo)

Now, all my sponsorships are directly forwarded as monthly funds to Flint.

Motivated to support my work, or just want your image here? See my GitHub Sponsors profile. Thanks!

What I'm Working On

Biggest Projects

If you work with JavaScript or TypeScript, you may have used one of the open source projects I support:

Project Description Role Stars
eslint Find and fix problems in your JavaScript code. Committer
mocha Classic, reliable, trusted test framework for Node.js and the browser Maintainer
typescript-eslint Monorepo for all the tooling which enables ESLint to support TypeScript Maintainer
TypeStat Converts JavaScript to TypeScript and TypeScript to better TypeScript. Creator & maintainer
create-typescript-app Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. Creator & maintainer
Bingo Delightful templates for web repositories. Creator & maintainer

Emojis

I also have an interest in making web apps more delightful. These projects will help you add emoji delighters to your page quickly.

Project Description Role Stars
node-emoji simple emoji support for node.js projects Junior maintainer
emoji-blast Blasts emoji like fireworks all up in your HTML page. Creator & maintainer
emojipedia Unofficial static export of technical information from Emojipedia. Creator & maintainer
emoji-platform-data Static export of platform-specific metadata for unicode emojis. Creator & maintainer

Just For Fun

These projects I do because I think they're fascinating and/or fun, if not particularly useful:

Project Description Role Stars
FullScreenMario An HTML5 remake of the original Super Mario Brothers - expanded for wide screens. Creator
FullScreenPokemon A free HTML5 remake of the original Pokemon, expanded for modern browsing. Creator & maintainer
EightBittr Bare-bones, highly modular game engine for 2D 8-bit games. Creator & maintainer
ChooseYourFramework Choosing a modern JavaScript UI framework, Pokemon-style. Creator & maintainer
Budgie A unified syntax that compiles into your favorite OOP languages. Creator & maintainer

Tooling

I work on assorted projects in the JavaScript/TypeScript ecosystem that make it easier to write high quality applications.

Project Description Role Stars
dedent ES6 string tag that strips indentation from multi-line strings. Adoptive maintainer
flint [Experimental] A fast, friendly linter. Creator & maintainer
eslint-plugin-package-json Rules for consistent, readable, and valid package.json files. Adoptive maintainer
bingo Delightful templates for web repositories. Creator & maintainer
eslint-plugin-expect-type ESLint plugin with ^? Twoslash, $ExpectError, and $ExpectType type assertions. Adoptive maintainer
ts-api-utils Utility functions for working with TypeScript's API. Successor to the wonderful tsutils. Creator & maintainer
package-json-validator Tools to validate package.json files. Adoptive maintainer
prettier-plugin-curly Prettier plugin to enforce consistent brace style for all control statements. Creator & maintainer
eslint-plugin-erasable-syntax-only ESLint plugin to granularly enforce TypeScript's erasableSyntaxOnly flag. Creator & maintainer
formatly Formats code with whatever formatter a project is already using. Creator & maintainer
refined-saved-replies Browser extension for GitHub's Saved Replies that adds replies from a repository's .github/replies.yml. Creator & maintainer
OctoGuide Helps contributors adhere to best practices for your repository on GitHub. Creator & maintainer
ts-function-inliner TypeScript transformation that inlines calls to small functions. Creator & maintainer
console-fail-test Gently fails test runs if the console was used during them. Creator & maintainer
mock-react-redux Mocks out Redux actions and selectors for clean React Jest tests. Creator & maintainer
sentences-per-line Packages to enforce the number of sentences per line in Markdown files. Creator & maintainer
github-username-to-emails Fetches any public emails associated with a GitHub username. Creator & maintainer
eslint-fix-utils Utilities for ESLint rule fixers and suggestions. Creator & maintainer
all-contributors-auto-action Fills in missing allcontributors entries for a repository. Creator & maintainer
wifi-share-link Generates shareable WIFI:// link strings for wifi credentials. Creator & maintainer
should-semantic-release Checks whether a semantic release should be run for a repository. Creator & maintainer
cached-factory Creates and caches values under keys. Creator & maintainer
import-local-or-npx Imports a local package or one installed from npx. Creator & maintainer
are-docs-informative Checks whether a documentation description introduces any new information. i Creator & maintainer
release-it-action Runs release-it as a GitHub Action, with handling for semantic releases and protected branches. Creator & maintainer
debug-for-file debug() wrapper that creates a string based on your file's path within the package. Creator & maintainer
tidelift-me-up-site Web app to find your npm packages eligible for Tidelift funding. Creator & maintainer
tidelift-me-up CLI that checks if your npm packages are eligible for Tidelift funding. Creator & maintainer
console-table-without-index The built-in Node.js console.table, but without the annoying (index) column. Creator & maintainer
prune-github-notifications Prunes GitHub notifications you don't care about, such as automated dependency bumps. Creator & maintainer
github-username-to-emails-site Web app to fetch any public emails associated with a GitHub username. Creator & maintainer
get-github-auth-token Retrieves the running user's GitHub authentication token. Creator & maintainer
notion-rich-text-to-markdown Converts Notion's rich text strings to Markdown. Creator & maintainer
package-json-validator-cli CLI to validate package.json files. Creator & maintainer
cspell-populate-words Populates your cspell.json dictionary with existing unknown words. Creator & maintainer
github-sponsors-to-markdown Creates a Markdown table summarizing your GitHub sponsors. Creator & maintainer
description-to-co-authors Parses co-authors from Git/GitHub-style commit messages and issue bodies. Creator & maintainer
text-table-fast Generates borderless text table strings suitable for printing to stdout. Fast. Creator & maintainer
all-contributors-for-repository Generates an allcontributors list for an existing repository. Creator & maintainer
without-undefined-properties Copies an object without its undefined properties. Creator & maintainer
zod-tsconfig Zod schemas for TypeScript's TSConfig properties. Creator & maintainer
npm-username-to-packages Fetches any packages associated with an npm username. Creator & maintainer
co-author-to-username Fetches the GitHub username for a co-author, if possible. Creator & maintainer
object-strings-deep Retrieves all strings with an object, including keys, properties, recursive objects, and within arrays. Creator & maintainer
remove-dependencies Quickly removes dependencies from your package.json file. Creator & maintainer
populate-all-contributors-for-repository Populates the .all-contributorsrc for a repository using all-contributors-for-repository. Creator & maintainer
octokit-from-auth Creates a GitHub Octokit instance from any available auth token. Creator & maintainer
all-contributors-inferred Infers All Contributors settings from an existing README.md table and package.json. Creator & maintainer
all-properties-lazy Evaluates the properties of an object, including functions, Promises, and their combination. Creator & maintainer
is-comment-meaningless Determines whether the text of a comment doesn't add anything to the conversation. Creator & maintainer
terminal-reprint Efficiently (re)-prints text into your terminal. Creator & maintainer
set-github-repository-labels Sets labels for a GitHub repository, including renaming existing similar labels. Creator & maintainer
sinon-timers-repeatable A version of Sinon's `useFakeTimers` that you can call multiple times in a test. Creator & maintainer
new-github-repository Creates a new repository on GitHub, including waiting for initialization. [NEW] Creator & maintainer
github-default-labels Static export of GitHub's default labels. Creator & maintainer
draft-pr-once-action GitHub Action that changes a pull request to draft, once. Creator & maintainer

Development

See .github/CONTRIBUTING.md, then .github/DEVELOPMENT.md. Thanks!

Contributors


Josh Goldberg

This package is templated with create-typescript-app.

Pinned Loading

  1. release-it-action release-it-action Public

    Runs release-it as a GitHub Action, with handling for semantic releases and protected branches.

    TypeScript 10 2