How jquery is put together
This repository is the jQuery JavaScript library (v4.0.0), a client-side DOM manipulation/event/AJAX library written in JavaScript (ES2015+ modules under src/). It has no backend or datastore; the 'architecture' is a modular ES-module source tree that is bundled by a custom Node.js build pipeline (Rollup + Babel/SWC) into multiple distributable variants (standard, slim, ESM, factory) emitted to dist/ and dist-module/. Data flow is entirely in-browser: user code calls the jQuery API, which operates on DOM elements via internal modules (selector engine, event system, AJAX transports, effects). The repo also contains an extensive QUnit-based test suite run against real browsers and jsdom via jquery-test-runner, plus Node-based smoke tests.
Languages
Frameworks
Infrastructure
Major components
core
Provides the jQuery factory/init function, DOM evaluation (DOMEval), HTML/XML parsing, ready handling, access helpers, and type utilities.
selector
Implements the full Sizzle-style CSS selector engine (tokenize, preFilter, filters, uniqueSort), replaceable by a native querySelectorAll wrapper (src/selector-native.js).
ajax
Implements $.ajax and shorthands with pluggable transports: xhr, script (cross-domain script injection), JSONP, binary, and .load().
event
Event binding/unbinding (.on/.off), delegation, and programmatic triggering (.trigger/.triggerHandler).
manipulation
DOM insertion/replacement/removal, fragment building, script evaluation within inserted HTML (_evalUrl, domManip, buildFragment), and wrapMap.
attributes & css
attr/prop/val/classes handling plus style manipulation, dimension/offset calculations, show/hide logic, and animation support hooks.
deferred & callbacks & queue
Promise-like Deferred implementation (with exceptionHook), Callbacks lists, and animation/function queues including .delay().
build & release tooling
Node scripts (build/command.js, build/tasks/*, build/release/*) that assemble custom/slim/ESM/factory builds, minify, verify dist, generate changelogs/archives, sync AUTHORS.txt, and publish to CDN.
A single documentation fix corrected a misspelled technical term in the README.
3 weeksWeek of 2026-08-17
Week of 2026-08-17latest
A single documentation fix corrected a misspelled technical term in the README.
Week of 2026-08-03
Maintenance work updated the automated tools that run behind the scenes on GitHub.
Week of 2026-07-20
New guidelines were added explaining how machine-generated contributions should be handled.
The past few weeks on the jQuery repository have been quiet, with just one small change per week. The work has focused on housekeeping: improving documentation, adding contribution guidelines, and keeping the project's automated tools up to date.
Week by week
2026-08-17A single documentation fix corrected a misspelled technical term in the README.latest1 change
Docs
Fixed XMLHttpRequest spelling in README
The project's main README file had 'XMLHttpRequest' (a web technology name) spelled incorrectly, and this change fixed the typo.
2026-08-03Maintenance work updated the automated tools that run behind the scenes on GitHub.1 change
Chore
Updated GitHub Actions automation
Five updates were applied to the group of automated workflows that help test and manage the project, keeping its tooling current.
2026-07-20New guidelines were added explaining how machine-generated contributions should be handled.1 change
Docs
Added guidelines for machine-generated contributions
Documentation was added to explain the rules for code or text contributions created by AI or other automated tools.
Dependencies and code review
Dependency advisories
Security Watch
7 vulnerable packages (15 advisories) across 769 scanned dependencies.
brace-expansion 1.1.15
3 advisories. Fixed in 5.0.7.
How it can be abusedThis library is only used behind the scenes by build and test tooling that matches file paths, such as glob and minimatch. A malicious or corrupted input like a crafted filename or config could make those tools hang or run out of memory, freezing builds on developer machines or CI servers; people visiting sites built with jQuery are not affected.
- highGHSA-3jxr-9vmj-r5cpbrace-expansion: DoS via exponential-time expansion of consecutive non-expanding {} groups
- highGHSA-mh99-v99m-4gvgbrace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash
- highGHSA-rgw5-rvv9-x895brace-expansion: DoS via unbounded intermediate arrays, bypassing the CVE-2026-14257 mitigation
fast-uri 3.1.2
3 advisories. Fixed in 4.0.1.
How it can be abusedfast-uri parses web addresses and can be tricked into treating a malicious address as belonging to a trusted host, which could let an attacker bypass checks that rely on comparing URLs. However, jQuery does not depend on this library and runs entirely in the browser, so this flaw has no practical effect on this codebase or its users.
- highGHSA-4c8g-83qw-93j6fast-uri vulnerable to host confusion via failed IDN canonicalization
- highGHSA-7p8r-x3mc-p8w7fast-uri vulnerable to host confusion via backslash authority introducer
- highGHSA-v2hh-gcrm-f6hxfast-uri vulnerable to host confusion via literal backslash authority delimiter
ip-address 10.2.0
1 advisory. Fixed in 10.3.1.
How it can be abusedAn attacker could trick code that checks IP addresses into approving an address that means something different to the real resolver, letting requests reach internal systems that were supposed to be blocked. In this repository the library is not part of what ships to users; at most it appears in development or test tooling, so end users of jQuery are not affected.
- highGHSA-mwp4-54f8-5fhrip-address: Address4 decodes leading-zero octets as decimal while resolvers decode them as octal, allowing SSRF and trust-boundary bypass
js-yaml 4.2.0
2 advisories. Fixed in 3.15.0.
How it can be abusedA malicious YAML file, such as a crafted test fixture or config checked into the repo, could make the js-yaml parser burn huge amounts of CPU during the build or test pipeline, slowing or hanging developer machines and CI. Only people running the project's own build and test scripts are affected; nothing ships to browser users.
- highGHSA-52cp-r559-cp3mjs-yaml: YAML merge-key chains can force quadratic CPU consumption
- highGHSA-5p4m-2wfm-xmqjJS-YAML: Quadratic CPU consumption in !!omap resolution (3.x and 4.x) — CVE-2026-59870 fix not backported
serialize-javascript 6.0.2
1 advisory. Fixed in 7.0.3.
How it can be abusedThis package turns JavaScript values into strings and can be tricked into running attacker code if it serializes data an attacker controls. In this repo it is only a build-time tool handling trusted local files during bundling, so real-world users of the jQuery library are not exposed.
- highGHSA-5c6j-r48x-rmvqSerialize JavaScript is Vulnerable to RCE via RegExp.flags and Date.prototype.toISOString()
shell-quote 1.8.4
1 advisory. Fixed in 1.9.0.
How it can be abusedAn attacker could feed a very long or tricky string into the shell-quote parse function, making it slow down dramatically and freeze whatever process called it. In this repo shell-quote is only used in developer and build tooling, so real users of jQuery in browsers are not affected; only developers running local builds or tests could be inconvenienced.
- highGHSA-395f-4hp3-45gvshell-quote: Quadratic-complexity Denial of Service in `parse()` (CWE-407)
undici 7.24.5
4 advisories. Fixed in 7.29.0.
How it can be abusedThis package is only used in the Node.js build and test tooling, never in the browser code that ships to websites. An attacker could only abuse these flaws if a developer or CI job ran tests that connect to a malicious server, which could leak responses between users, skip certificate checks, or crash the test process; end users of jQuery are not affected.
- highGHSA-4cwx-7wf7-3272undici vulnerable to cross-user information disclosure and parse-time crash via degenerate private cache directives
- highGHSA-hm92-r4w5-c3mjundici vulnerable to cross-origin request routing via SOCKS5 proxy pool reuse
- highGHSA-vmh5-mc38-953gundici vulnerable to TLS certificate validation bypass via dropped requestTls in SOCKS5 ProxyAgent
- highGHSA-vxpw-j846-p89qundici WebSocket client vulnerable to denial of service via fragment count bypass
Code review
No concrete code-level issues confirmed.
Get this report every week for your repos.
GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.
$19 a month, flat · First 10 outputs free · No card required