explaingit

hubspot/youmightnotneedjquery

14,185AstroAudience · developerComplexity · 1/5Setup · easy

TLDR

A reference website showing how to replace jQuery with plain built-in JavaScript, organized as side-by-side code comparisons for modern browsers and older Internet Explorer versions.

Mindmap

mindmap
  root((youmightnotneedjquery))
    What it does
      jQuery vs vanilla JS
      Side-by-side examples
      Browser compatibility
    Tech Stack
      Astro site builder
      Node.js
      npm
    Content Areas
      DOM selection
      Events handling
      Ajax requests
      Animations
    Audience
      JS developers
      jQuery migrators
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Find the plain-JavaScript equivalent of a jQuery method you already know before adding a jQuery dependency

USE CASE 2

Check which native browser API replaces a jQuery feature for both modern browsers and older IE versions

USE CASE 3

Contribute a new comparison example to help other developers drop jQuery from their projects

Tech stack

JavaScriptAstroNode.jsnpm

Getting it running

Difficulty · easy Time to first run · 5min
License terms not specified in the explanation.

In plain English

This project is the source code behind the website You Might Not Need jQuery. jQuery is a long-popular JavaScript library that web developers have used for years to do common tasks in the browser, such as finding elements on a page, reacting to clicks, or loading data. Over time, plain JavaScript built into browsers gained many of the same abilities, so jQuery is often no longer required. This resource exists to show people how to do those everyday tasks without it. The README is short and points mainly to the live site at youmightnotneedjquery.com, where the actual content lives. The repository holds the code that builds that site. Based on the contributing notes, the site is organized into sections, and each section compares how a task is done in jQuery against how it is done in plain JavaScript. One interesting detail is how the project handles different browser versions. To add a new example, a contributor creates a folder and adds files for the jQuery version plus plain-JavaScript versions aimed at different targets: older Internet Explorer versions 8 through 11, and a modern file for current browsers like Chrome, Safari, and Firefox. The site then shows the right version depending on which browsers a visitor needs to support. Building the site yourself requires Node.js. The steps given are to run npm install to get the dependencies, then npm run dev to build and watch for changes while you work, or npm run build to produce the site once. The repository is listed as using Astro, a tool for building websites. The README does not go further than this, so the bulk of the educational material is on the website rather than in the README itself.

Copy-paste prompts

Prompt 1
Show me the plain JavaScript equivalent of jQuery's $.ajax() for fetching data from an API in a modern browser
Prompt 2
Rewrite this jQuery code using vanilla JavaScript: $(element).addClass('active').siblings().removeClass('active')
Prompt 3
What is the native JavaScript replacement for $(document).ready() in both modern browsers and IE11
Prompt 4
Convert this jQuery event delegation pattern to plain JavaScript: $('ul').on('click', 'li', handler)
Prompt 5
Which jQuery methods still have no clean native equivalent in modern browsers according to youmightnotneedjquery
Open on GitHub → Explain another repo

← hubspot on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.