jashkenas/underscore

JavaScript's utility _ belt

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Type:Library / SDKCategory(s):Core & Utility LibrariesLanguages & Runtimes
Added to GitGenius on December 31st, 2024
Created on October 25th, 2009
Open Issues & Pull Requests: 53 (+0)
GitHub issues: Enabled
Number of forks: 5,419
Total Stargazers: 27,319 (+0)
Total Subscribers: 823 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.6 hours
Mean response time: 139.5 days
90th percentile: 215.9 days
Tracked items: 22

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 7, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits.

How this project is maintained

77% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 94% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 30
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 3,042 days
Stale 30+ days: 26
Stale 90+ days: 24

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 1
Events in 7 days: 3

Top labels

  • wontfix (284)
  • enhancement (238)
  • question (234)
  • fixed (186)
  • breaking change (179)
  • invalid (158)
  • duplicate (130)
  • bug (113)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Underscore.js is a utility-belt library for JavaScript that provides functional programming helpers without modifying core JavaScript objects. The library implements common functional operations including each, map, reduce, and filter, offering developers a way to work with functional patterns in JavaScript while maintaining clean separation from native prototypes. The project is maintained as an open-source component of DocumentCloud and is available at underscorejs.org.

The repository spans multiple categories of functionality including array manipulation, object operations, string processing, collection handling, and iteration utilities. It serves as a functional helpers library that enables traversal and manipulation of collections and objects through a consistent API. The library also includes templating capabilities, making it useful for both data transformation and template rendering tasks. Its cross-browser compatibility has made it a foundational utility library in the JavaScript ecosystem.

GitGenius activity data reveals that the repository maintains a measured approach to issue and pull request handling. This labeling pattern suggests the maintainers are selective about which requests are accepted and transparent about decisions to decline features or introduce breaking changes.

This centralized maintenance structure reflects a focused stewardship model where key decisions rest with experienced maintainers.

The library's documentation and support infrastructure includes a security policy, a Gitter channel for community discussion, and references to Stack Overflow for user questions. The project maintains a code of conduct and offers multiple support pathways including Patrift donations and Tidelift enterprise coverage. This multi-layered support structure demonstrates commitment to both community engagement and sustainable maintenance. The project's origins in DocumentCloud and its continued evolution show how utility libraries can maintain relevance across changing JavaScript landscapes by providing stable, well-tested functional programming abstractions that complement rather than replace native JavaScript capabilities.