npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ranux-fetcher

v1.0.2

Published

Universal Advanced HTTP & Scraping Client with Smart Proxy Pool Rotation, Chrome 151 JA4/Kyber768 Stealth Engine, Zstd Decompression, and 4-Node Cloudflare Edge Fallback. Drop-in replacement for Axios and got-scraping.

Readme

🌐 ranux-fetcher

Universal Advanced HTTP & Scraping Client. Unblockable, Memory-Safe, and Blazing Fast.

NPM Version Node.js TypeScript Ready License: MIT


⚡ Why ranux-fetcher? (v1.0.1 Enterprise Edition)

ranux-fetcher is the most powerful drop-in replacement for Axios and the deprecated got-scraping. Built specifically for High-Performance WhatsApp Bots (Baileys) and heavy scraping infrastructure, it ensures your requests never fail and your RAM never crashes.

  • 🛡️ 99.9% WAF Bypass Rate: Native JA4H HTTP/2 HPACK sorting and Kyber768 TLS Spoofing to flawlessly bypass Turnstile, DataDome, and Akamai.
  • 🤖 100% Axios Bot-Parity: Zero-rewrite needed! Fully supports error.response.status, res.data, and interceptors exactly like Axios.
  • ☁️ Smart Edge Cluster & Routing: Failsafe 4-Node Edge Network for APIs, but automatically switches to Direct Local Engine for large media streams (Avoids Cloudflare 524 timeouts & 100MB payload limits).
  • 💾 Zero-Disk I/O Streaming: Perfectly optimized for WhatsApp Bots. Stream GBs of Movies/Games directly to WhatsApp natively without eating a single megabyte of Server RAM.
  • 🧠 Memory-Leak Free: Powered by QuickLRU Session Caching and Safe Interceptor Garbage Collection. Designed to run 24/7 on low-RAM VPS environments without crashing.

📊 Ultimate Comparison

| Feature | axios | got-scraping | ranux-fetcher 👑 | | :--- | :---: | :---: | :---: | | Server RAM Usage (Bots) | ~30MB | ~40MB (Spikes) | ~20MB (Zero-Disk) ⚡ | | WAF / Cloudflare Bypass | 10% ❌ | 70% ⚠️ | 99.9% 🛡️ (Edge + JA4) | | Axios Drop-in API & Errors| ✅ | ❌ | ✅ Built-in | | Cheerio HTML Parser Built-in| ❌ | ❌ | ✅ (res.$()) | | Smart Proxy Auto-Rotation| ❌ | ❌ | ✅ (proxyList: []) | | Large Media Auto-Routing| ❌ | ❌ | ✅ Smart Bypass |


📦 Installation

npm install ranux-fetcher

💡 Real-World Examples

1. WhatsApp Bot Zero-Disk Streaming (Baileys/WAWeb.js)

Perfect for downloading 2GB+ Movies or FitGirl Repacks directly to WhatsApp without downloading to your server disk.

import ranux from 'ranux-fetcher';

// Fetch stream flawlessly (Bypasses Cloudflare Worker Timeouts automatically)
const res = await ranux.get('https://example.com/large-movie-2gb.mp4', {
    responseType: 'stream',
    headers: { 'Referer': 'https://sinhalasub.lk/' } // Native header casting supported
});

// Pass directly to Baileys. No RAM spikes! 🚀
await sock.sendMessage(jid, {
    document: { stream: res.data }, // res.data acts exactly like Axios native streams
    mimetype: 'video/mp4',
    fileName: 'Movie.mp4'
});

2. 100% Axios-Compatible Error Handling

If you are migrating a bot from Axios, your existing error handling logic will work out of the box without throwing undefined errors.

import ranux from 'ranux-fetcher';

try {
    const response = await ranux.get('https://dummyjson.com/auth/me');
} catch (error) {
    if (error.response) {
        // Fully parity with Axios
        console.log("Status Code:", error.response.status); 
        console.log("Response Data:", error.response.data);
    } else {
        console.log("Network/Timeout Error:", error.message);
    }
}

3. Instant HTML Web Scraping (Cheerio Built-in)

No need to manually import Cheerio or use .text(). It is built right into the response object!

import ranux from 'ranux-fetcher';

const res = await ranux.get('https://news.ycombinator.com/', { responseType: 'cheerio' });

// Execute the parser instantly
const $ = res.$();
console.log($('.titleline > a').first().text());

4. Smart Proxy Pool Rotation & Edge Fallback

Rotate through your proxies. If they fail or get blocked by a WAF, ranux-fetcher automatically relays the request through its internal highly anonymous Stealth Edge Network.

import ranux from 'ranux-fetcher';

const res = await ranux.get('https://highly-protected-site.com/api/data', {
    proxyList: [
        'http://user:[email protected]:8080',
        'http://user:[email protected]:8080'
    ],
    relayMode: 'auto', // Falls back to Edge Nodes ONLY if proxies fail
    cookies: "auth_session=12345; user_pref=dark" // Inject raw cookies safely
});
console.log(res.data);

5. Axios-Style Interceptors & Request Transformers

Modify requests before they leave or responses before they arrive, exactly like Axios. Safely garbage collected to prevent memory leaks.

import ranux from 'ranux-fetcher';

// Add a request interceptor
ranux.interceptors.request.use((config) => {
    config.headers['Authorization'] = 'Bearer YOUR_TOKEN';
    return config;
});

const res = await ranux.get('https://api.example.com/profile');

🕵️‍♂️ Under The Hood: The Stealth Magic

ranux-fetcher includes invisible enterprise-grade protections out of the box:

  • 🎯 Smart Download Routing: If responseType: 'stream' is requested, the engine intelligently avoids the Edge Network to prevent Cloudflare Error 524 timeouts and Payload Limits, forcing a direct ultra-fast local connection.
  • 🔄 JA4H HTTP/2 HPACK Sequencing: True detection of negotiated ALPN protocols. In HTTP/1.1 it uses PascalCase headers, but in HTTP/2 it switches to strict HPACK lowercase sorting to perfectly spoof Chrome 151.
  • 🛡️ Stealth-Killer Guard: Passing a custom httpsAgent will not override the TLS spoofing engine. Your custom agent is automatically wrapped in our TransformHeadersAgent to preserve the fingerprint.
  • 🧠 Zstd Race-Condition Safe: Asynchronously loads modern @napi-rs/zstd compression safely on startup without crashing the first incoming request.

🛠️ Custom Instance Factory

Create reusable instances with default configurations.

import ranux from 'ranux-fetcher';

const apiClient = ranux.create({
    baseURL: 'https://api.example.com',
    timeout: 30000,
    relayMode: 'never', // Always use direct engine
    smartRetry: true // Exponential backoff on 429/503 errors
});

const res = await apiClient.get('/users/1');
console.log(res.data);

📜 License

This project is licensed under the MIT License.

Designed and engineered by Ransara Devnath.