# camsong/you-dont-need-jquery

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/camsong-you-dont-need-jquery).**

20,160 stars · 1,717 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/camsong/You-Dont-Need-jQuery
- awesome-repositories: https://awesome-repositories.com/repository/camsong-you-dont-need-jquery.md

## Description

This project is a vanilla JavaScript reference guide and implementation collection designed to replace legacy libraries with native browser patterns. It provides a set of native JavaScript patterns for selecting, modifying, and navigating HTML elements, alongside a web API implementation guide for handling events and styles.

The project serves as a reference for implementing asynchronous JavaScript patterns using native promises and fetch for remote data and background tasks. It also includes a client-side utility collection for performing data transformations, type validation, and element measurements using standard JavaScript logic.

The broader capability surface covers DOM manipulation, including document structure modification, element selection, and tree-traversal navigation. It also encompasses client-side event handling, browser-based UI animation via CSS transitions, and frontend data transformation.

## Tags

### Programming Languages & Runtimes

- [API Wrappers](https://awesome-repositories.com/f/programming-languages-runtimes/programming-utilities/function-utilities/api-wrappers.md) — Ships a native JavaScript wrapper that replicates library-like selection and chaining patterns for the DOM.
- [Asynchronous Programming Patterns](https://awesome-repositories.com/f/programming-languages-runtimes/asynchronous-programming-patterns.md) — Demonstrates non-blocking execution flows using native promises and async/await syntax.
- [Pure JavaScript Implementations](https://awesome-repositories.com/f/programming-languages-runtimes/pure-javascript-implementations.md) — Provides implementations written entirely in vanilla JavaScript to avoid external library dependencies.
- [Promise-Based Flow Control](https://awesome-repositories.com/f/programming-languages-runtimes/promise-based-flow-control.md) — Uses native promises to manage the sequence and lifecycle of asynchronous network requests.
- [Type Validation](https://awesome-repositories.com/f/programming-languages-runtimes/type-validation.md) — Provides utilities to verify variable types at runtime to ensure data consistency. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))

### Web Development

- [DOM Manipulation Libraries](https://awesome-repositories.com/f/web-development/dom-manipulation-libraries.md) — Provides a comprehensive set of native browser APIs for selecting and modifying HTML elements.
- [Event Listener Management](https://awesome-repositories.com/f/web-development/browser-integration-utilities/dom-event-handling/event-listener-management.md) — Provides native implementations for attaching and detaching event listeners to DOM elements.
- [Event Handling](https://awesome-repositories.com/f/web-development/event-handling.md) — Implements native browser event listener patterns for responding to user interactions.
- [Fetch API Integrations](https://awesome-repositories.com/f/web-development/fetch-api-integrations.md) — Implements native network requests using the Fetch API for remote data retrieval.
- [Remote Data Fetching](https://awesome-repositories.com/f/web-development/remote-data-fetching.md) — Implements native fetch patterns for retrieving data from network resources and updating the view. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [Vanilla JavaScript Utilities](https://awesome-repositories.com/f/web-development/vanilla-javascript-utilities.md) — Ships a collection of vanilla utilities for data transformation, type validation, and element measurements.

### Data & Databases

- [DOM Content Modification](https://awesome-repositories.com/f/data-databases/key-value-stores/key-deletion/dom-content-modification.md) — Implements functions to add, remove, clone, or replace nodes within the document structure. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [Collection Element Transformations](https://awesome-repositories.com/f/data-databases/collection-element-transformations.md) — Includes functional utilities to filter, map, and merge arrays for data transformation. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))

### Education & Learning Resources

- [Vanilla JavaScript Reference Guides](https://awesome-repositories.com/f/education-learning-resources/vanilla-javascript-reference-guides.md) — Offers a mapping guide to replace legacy library methods with native browser API calls.
- [JavaScript Data Transformations](https://awesome-repositories.com/f/education-learning-resources/algorithm-and-data-structure-guides/data-structure-transformation-techniques/javascript-data-transformations.md) — Provides techniques for manipulating and transforming arrays and strings using built-in JavaScript methods.
- [Web API Implementation Patterns](https://awesome-repositories.com/f/education-learning-resources/web-api-implementation-patterns.md) — Provides practical patterns for implementing native browser APIs to replace legacy jQuery event and style methods.

### Software Engineering & Architecture

- [DOM Hierarchy Navigators](https://awesome-repositories.com/f/software-engineering-architecture/tree-traversal-algorithms/document-tree-traversers/dom-hierarchy-navigators.md) — Implements programmatic navigation through parent, child, and sibling references within the HTML tree.
- [Structural Navigation](https://awesome-repositories.com/f/software-engineering-architecture/tree-traversal-algorithms/document-tree-traversers/structural-navigation.md) — Provides mechanisms for navigating the document hierarchy using familial node relationships. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [Asynchronous Task Managers](https://awesome-repositories.com/f/software-engineering-architecture/asynchronous-task-managers.md) — Provides patterns for coordinating multiple background operations using native promises. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))

### User Interface & Experience

- [CSS Transitions](https://awesome-repositories.com/f/user-interface-experience/css-transitions.md) — Demonstrates how to trigger hardware-accelerated visual effects by toggling CSS classes.
- [DOM Element Selectors](https://awesome-repositories.com/f/user-interface-experience/dom-element-selectors.md) — Provides a system for locating specific web elements using CSS selectors and attributes. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [Inline Style Manipulations](https://awesome-repositories.com/f/user-interface-experience/inline-style-manipulations.md) — Provides utilities for updating inline style objects and manipulating CSS class lists. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [User Interaction Handling](https://awesome-repositories.com/f/user-interface-experience/user-interaction-handling.md) — Provides a system for capturing and processing user input events within the browser interface. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
- [DOM Dimension Utilities](https://awesome-repositories.com/f/user-interface-experience/dom-dimension-utilities.md) — Provides utilities to retrieve the height, width, position, and scroll offset of page elements. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))

### Part of an Awesome List

- [Animation & Transitions](https://awesome-repositories.com/f/awesome-lists/media/animation-transitions.md) — Provides a reference for creating visual transitions and managing CSS styles through native JavaScript.

### Graphics & Multimedia

- [UI Transition Effects](https://awesome-repositories.com/f/graphics-multimedia/custom-animation-effects/ui-transition-effects.md) — Implements a system to create fade, slide, and custom motion effects by modifying style properties. ([source](https://cdn.jsdelivr.net/gh/camsong/you-dont-need-jquery@master/README.md))
