3 पॉइंट द्वारा GN⁺ 2026-01-16 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Reddit, Voat, Ruqqus जैसे प्लेटफ़ॉर्म के डेटा को PostgreSQL-आधारित HTML आर्काइव में बदलने वाला एक ओपन सोर्स टूल
  • 2.38 अरब Reddit पोस्ट्स (40 हज़ार से अधिक सबरेडिट सहित) को लोकल में प्रोसेस करता है, और मोबाइल-फ्रेंडली डिज़ाइनJavaScript-रहित इंटरफ़ेस देता है
  • ऐसे समय में जब Reddit API तक पहुंच व्यावहारिक रूप से बंद हो चुकी है और थर्ड-पार्टी ऐप्स व डेटा एक्सेस को रोका जा रहा है, यह मौजूदा Pushshift डेटासेट का उपयोग करके पूरा Reddit आर्काइव व्यक्तिगत स्वामित्व में बदलने की कोशिश है
  • JavaScript, बाहरी रिक्वेस्ट और ट्रैकिंग के बिना static HTML पर चलता है, और ऑफलाइन, air-gapped environment, USB, Raspberry Pi, LAN server जैसी कई परिस्थितियों में चलाया जा सकता है
  • PostgreSQL full-text search (FTS) और 30 से अधिक REST API के साथ, AI टूल इंटीग्रेशन के लिए MCP server (29 tools) भी देता है, जिससे बड़े पैमाने पर विश्लेषण और क्वेरी संभव होती है

Reddit डेटा एक्सेस माहौल में बदलाव

  • Reddit API अब आर्काइविंग उपयोग के लिए व्यावहारिक रूप से अनुपयोगी हो चुकी है
  • थर्ड-पार्टी ऐप इकोसिस्टम का पतन और Pushshift डेटासेट तक पहुंच पर बार-बार मंडराता अवरोध
    • Pushshift डेटासेट Reddit की सार्वजनिक पोस्ट और टिप्पणियों को लंबे समय तक इकट्ठा करके बनाया गया एक विशाल आर्काइव है, जिसमें अरबों टेक्स्ट रिकॉर्ड शामिल हैं
    • यह Reddit के आधिकारिक API के जरिए पहले एकत्र किए गए पुराने समय के snapshot data पर आधारित है, इसलिए वर्तमान Reddit सर्वर या API तक पहुंच के बिना भी इसका उपयोग संभव है
    • API नीतियों में बदलाव और डेटा पहुंच प्रतिबंधों के बाद, यह Reddit के इतिहास संरक्षण और बड़े पैमाने के विश्लेषण के लिए व्यावहारिक रूप से आखिरी सार्वजनिक डेटा संसाधन के रूप में उपयोग हो रहा है
  • Pushshift के माध्यम से Reddit के पूरे पुराने रिकॉर्ड पहले ही torrent के रूप में सार्वजनिक किए जा चुके हैं
    • Subreddit Comments/Submissions 2005-06 to 2024-12
    • Reddit के इतिहास के सबसे लोकप्रिय 40 हज़ार सबरेडिट को अलग-अलग फ़ाइलों में संकलित किया गया है
    • torrent client का उपयोग करके मनचाहे सबरेडिट ही डाउनलोड किए जा सकते हैं

Redd-Archiver प्रोजेक्ट का अवलोकन

  • Redd-Archiver v1.0 Reddit, Voat और Ruqqus के सार्वजनिक डेटा डंप को बदलकर ब्राउज़ किए जा सकने वाले HTML आर्काइव बनाता है
    विज्ञापन
  • PostgreSQL backend का उपयोग करके बड़े डेटासेट को निश्चित मेमोरी (4GB) में प्रोसेस करता है, और GIN indexing-आधारित FTS से तेज़ खोज देता है
  • HTML output ऑफलाइन होने पर भी sorting, pagination और comment tree navigation की सुविधा देता है

Redd-Archiver आर्काइविंग टूल की मुख्य संरचना

  • Reddit (.zst), Voat (SQL), Ruqqus (.7z) डंप को इनपुट के रूप में उपयोग करता है
    • मल्टी-प्लेटफ़ॉर्म एकीकरण: 3 प्लेटफ़ॉर्म को एक ही आर्काइव में जोड़ता है; प्लेटफ़ॉर्म ऑटो-डिटेक्शन और एकीकृत खोज सपोर्ट
    • CLI flags और URL prefix के साथ /r/, /v/, /g/ path structure प्रदान करता है
  • static HTML फ़ाइल निर्माण के जरिए server dependency हटाता है
  • केवल index.html खोलकर ब्राउज़ किया जा सकता है, बाहरी नेटवर्क की ज़रूरत नहीं
    • mobile-first responsive layout और touch-friendly navigation
    • score, comments, date sorting index और pagination
    • JavaScript-रहित CSS-आधारित interaction
  • PostgreSQL FTS कॉन्फ़िगरेशन के साथ प्लेटफ़ॉर्म-एकीकृत full-text search सपोर्ट
    • keyword, author, date, score आदि से फ़िल्टरिंग
    विज्ञापन
  • पोस्ट, टिप्पणियां, user, subreddit और aggregate queries सहित REST API उपलब्ध
  • AI टूल्स से सीधे आर्काइव को query करने के लिए MCP server शामिल
    • Claude Desktop या Claude Code में पोस्ट, टिप्पणियां, user और search query संभव
  • प्रति instance करोड़ों पोस्ट्स प्रोसेस किए जा सकते हैं
  • PostgreSQL संरचना के कारण डेटा आकार से अलग मेमोरी उपयोग स्थिर रहता है
  • पूरे 2.38B पोस्ट्स के लिए विषय-आधारित कई instances में वितरित संचालन की सिफारिश
  • Python, PostgreSQL, Jinja2, Docker आधारित इम्प्लीमेंटेशन (Claude Code का उपयोग समग्र विकास सहायता के रूप में किया गया)

डिप्लॉयमेंट और संचालन परिदृश्य

  • USB drive या local folder आधारित ऑफलाइन ब्राउज़िंग सपोर्ट
  • local/homelab: एक ही कमांड से HTTP या Tor वातावरण में चलाया जा सकता है
  • production HTTPS: Let’s Encrypt certificate का ऑटो सेटअप (लगभग 5 मिनट)
  • Tor hidden service: port forwarding के बिना .onion पते से पहुंच
  • static hosting: GitHub Pages या Codeberg Pages पर अपलोड संभव (search feature छोड़कर)
  • Docker-आधारित deployment: PostgreSQL सहित पूरी तरह स्वचालित कॉन्फ़िगरेशन
    • ऑफलाइन ब्राउज़िंग, local search server, Tor/HTTPS simultaneous mode सपोर्ट

सार्वजनिक जानकारी

1 टिप्पणियां

 
GN⁺ 2026-01-16
Hacker News की राय
  • आर्काइव को self-host करने का यह शानदार तरीका है
    निजी तौर पर मुझे अच्छा लगेगा अगर कोई plugin हो जो हटाए गए comments या bots द्वारा overwrite किए गए comments को अपने-आप मूल रूप में restore कर दे
    आजकल Reddit इस्तेमाल करना मुश्किल होने की एक वजह यह है कि पुराने links में से आधे protest के तौर पर overwrite होने के कारण बेकार comments में बदल चुके हैं
    विडंबना यह है कि मूल सामग्री AI training archives में तो बची रहती है, लेकिन आम user के लिए 2 साल पहले के printer driver fix जैसी चीज़ें ढूँढना मुश्किल हो जाता है

    • दरअसल वह असली विडंबना नहीं है। बड़े पैमाने पर अधिकांश comment deletions LLM training protest की वजह से नहीं, बल्कि Reddit द्वारा API बंद किए जाने के boycott के कारण हुई थीं
      साइट को कम उपयोगी बनाना ही उनका मकसद था, और users को छोड़कर जाने पर मजबूर करना ही protest का मूल बिंदु था
    • संबंधित project के तौर पर reddit-uncensored का लिंक साझा किया गया
    • मैं भी comments के गायब होने की समस्या अक्सर देखता हूँ, लेकिन अगर लेखक अब सार्वजनिक चर्चा में हिस्सा नहीं लेना चाहता, तो मैं उस फैसले का सम्मान करता हूँ
      मैं archive खंगालकर उस निर्णय को निष्प्रभावी करने की कोशिश नहीं करता। बस आगे बढ़ जाता हूँ
  • डेटा torrent के ज़रिए मिल सकता है
    लिंक: redd-archiver repository

    • हर platform के लिए sub stats और profiling भी जारी की गई है
      इससे यह तय करने में मदद मिलती है कि किन communities को पहले preserve करना चाहिए
  • यह वाकई शानदार project है
    PushShift के अलावा दूसरे archives भी हैं — जैसे Arctic Shift और PullPush, जो अलग-अलग datasets देते हैं
    deletion request scope के आधार पर शामिल posts या comments अलग हो सकते हैं

  • मेरा ख्याल है कि इस डेटा के आधार पर decentralized social media को फिर से seed किया जा सकता है
    बिल्कुल किसी project को fork करने जैसा

    • इसके लिए instance registry और team-based leaderboard हेतु tooling पहले से बनाई जा चुकी है
      API भी इसे support करता है, इसलिए archive को decentralized तरीके से मिलकर host किया जा सकता है
  • यह सचमुच दिलचस्प project है
    मेरी जिज्ञासा यह है कि Pushshift dataset नियमित रूप से update होता है या यह किसी खास समय का snapshot है
    अगर self-host किया जाए, तो क्या नया डेटा लेने के लिए समय-समय पर फिर से डाउनलोड करना पड़ेगा?

    • 2025 के दिसंबर तक का डेटा पहले ही जारी किया जा चुका है, और आमतौर पर हर महीने नई release आती है
      watchful1 अभी डेटा को split और reprocess कर रहा है, और आगे चलकर Arctic Shift dumps लाकर monthly updates support करने की योजना है
      संबंधित links:
  • मैं भी इसी तरह के एक project पर काम कर रहा हूँ, और Pushshift Reddit डेटा को Hugging Face Datasets पर upload किया है
    जब torrent seed कमज़ोर हो, तब huggingface.co/datasets/nick007x/pushshift-reddit से सीधे individual files ली जा सकती हैं
    यह उन लोगों के लिए उपयोगी है जो monthly data या सिर्फ किसी खास subreddit को test करना चाहते हैं

  • मैंने Docker Compose से local environment उठाने की कोशिश की, लेकिन असफल रहा
    .env.example फ़ाइल नहीं है, और manually environment variables सेट करने पर भी volume path issue आता है
    लगता है इसे थोड़ा और polish करने की ज़रूरत है

    • feedback की वजह से missing example files जोड़ दी गईं, और docs में mkdir step भी update किया गया
      संबंधित commits: 0bb1039, c3754ea
  • क्या इसे बंद हो चुके Apollo app के साथ जोड़कर पुराने Reddit के किसी समय-बिंदु को फिर से बनाया जा सकता है?

    • API कई तरह के integrations support करता है, इसलिए इसकी संभावना है
  • मैं पूरा Reddit अपने कंप्यूटर पर store नहीं करना चाहता
    अच्छा होगा अगर सिर्फ कुछ खास subreddit चुने जा सकें

    • torrent में top 40,000 subreddits का डेटा शामिल है
      watchful1 ने डेटा को subreddit के हिसाब से split किया है, इसलिए मनचाहा हिस्सा ही डाउनलोड किया जा सकता है
  • मैं जानना चाहता हूँ कि 2~3 साल पहले private किए गए subreddit data dump में शामिल हैं या नहीं, इसे जाँचने का कोई तरीका है?

    • सभी subreddits का metadata dump शामिल किया गया है
      status field में private होने की जानकारी देखी जा सकती है, और काफी विस्तृत विवरण भी उपलब्ध है