Post

13 years ago today I made the first commit to the ESLint Git repo. It’s hard to believe that this project I cobbled together in my spare time over a couple of weeks is still going strong. I’ve been doing a lot of reflecting over these years and the journey it’s been. A thread.

9 reposts89 likes

The project was originally named JSCheck, but then I found Crockford already had a project with that name. I wanted something with “JS” or “lint”, but all the good permutations were taken. So I went with "ESLint" as a placeholder intending to rename it later. 🤷‍♂️

ESLint wasn't intended to replace JSHint, it was meant to augment it. I thought the ESLint use case was just for creating your own rules and would live alongside JSHint in a codebase. But early users were clear: they didn't want to use two tools.

Some of the earliest adoption came from open source enthusiasts who were drawn in by the clean MIT license (as opposed to JSHint's problematic license). That also furthered the work to make ESLint a true JSHint alternative rather than a complementary tool.

ESLint has always been heavily influenced by user feedback. When React was still new, someone from Facebook reached out to ask if I could make ESLint's parser configurable so they could swap in their own. It turned out to be an easy change, and Facebook started using ESLint.