parallel-js/parallel.js

Easy multi-core processing utilities for Node.

View on GitHub ↗Jump to charts ↓

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

Summary Information

Updated 3 hours ago
Added to GitGenius on September 21st, 2026
Created on February 10th, 2013
Open Issues & Pull Requests: 31 (+0)
GitHub issues: Enabled
Number of forks: 197
Total Stargazers: 3,245 (+0)
Total Subscribers: 92 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 808.0 days
Mean response time: 808.0 days
90th percentile: 808.0 days
Tracked items: 1

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,637 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

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

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Parallel.js is a library for parallel computing in JavaScript that abstracts away the complexity of multi-core processing in Node.js and web browsers.

The library solves the problem of executing computationally intensive operations across multiple processor cores without blocking the main thread. It works by leveraging Web Workers in browsers and child processes in Node.js, allowing developers to distribute work across available CPU cores. Data is passed to the library as an array, and operations are chained together in a fluent API style, with results flowing through map, reduce, and spawn operations before being resolved via a then callback.

Parallel.js suits projects that need to perform CPU-intensive calculations on datasets without freezing the user interface or blocking Node.js event loop processing. It works best when you have data-parallel workloads where the same operation can be applied across many items independently. The library defaults to spawning up to four worker threads, or the number of CPUs available on the machine, though this is configurable. It requires that all data passed through the pipeline be JSON-serializable, which rules out functions, circular references, and other non-serializable JavaScript objects.

The project shows consistent maintenance with regular updates addressing both Node.js and browser compatibility. Development activity includes ongoing refinement of worker thread management and fallback behavior for environments where Web Workers are unavailable. The codebase receives attention to cross-platform concerns, particularly around handling different browser capabilities and Node.js versions. Updates reflect responsiveness to issues around timeout handling, worker lifecycle management, and ensuring the library works reliably across diverse JavaScript runtime environments.