- Reddit, Voat, Ruqqus gibi platformların verilerini PostgreSQL tabanlı bir HTML arşivine dönüştüren açık kaynaklı araç
- 238 milyon Reddit gönderisini (40 binden fazla subreddit dahil) yerelde işleyerek mobil uyumlu tasarım ve JavaScript içermeyen arayüz sunuyor
- Reddit API erişiminin fiilen durduğu ve üçüncü taraf uygulamalar ile veri erişiminin engellendiği bir ortamda, mevcut Pushshift veri kümesini kullanarak eksiksiz bir Reddit arşivini kişisel mülkiyete dönüştürmeyi amaçlayan bir girişim
- JavaScript, harici istekler ve takip olmadan statik HTML olarak çalışıyor; çevrimdışı, air-gap ortamları, USB, Raspberry Pi ve LAN sunucuları gibi farklı biçimlerde çalıştırılabiliyor
- PostgreSQL tam metin araması (FTS) ve 30'dan fazla REST API ile, yapay zeka araçları entegrasyonu için MCP sunucusu (29 araç) sağlayarak büyük ölçekli analiz ve sorgulamayı destekliyor
Reddit veri erişim ortamındaki değişim
- Reddit API, arşivleme amaçları için fiilen kullanılamaz hale geldi
- Üçüncü taraf uygulama ekosisteminin çöküşü ve Pushshift veri kümesine erişimin engellenmesi tehdidi tekrar tekrar gündeme geldi
- Pushshift veri kümesi, Reddit'in herkese açık gönderi ve yorumlarını uzun süre boyunca toplayıp biriktiren büyük ölçekli bir arşivdir ve milyarlarca metin kaydı içerir
- Reddit'in resmi API'si üzerinden toplanmış geçmişe ait anlık görüntü verileri olduğundan, mevcut Reddit sunucularına veya API'sine erişmeden de kullanılabilir
- API politikası değişiklikleri ve veri erişimi kısıtlamalarından sonra, Reddit tarihini korumak ve büyük ölçekli analiz yapmak için fiilen elde kalan son açık veri kaynağı olarak kullanılıyor
- Pushshift aracılığıyla Reddit'in geçmişteki tüm kayıtları zaten torrent biçiminde yayımlandı
Redd-Archiver proje özeti
- Redd-Archiver v1.0, Reddit, Voat ve Ruqqus'un herkese açık veri dökümlerini dönüştürerek gezilebilir bir HTML arşivi oluşturur
- PostgreSQL arka ucu kullanarak büyük veri kümelerini sabit bellekle (4GB) işler ve GIN indeksleme tabanlı FTS ile hızlı arama sunar
- HTML çıktısı, çevrimdışıyken bile sıralama, sayfalama ve yorum ağacında gezinmeyi destekler
Redd-Archiver arşivleme aracının temel yapısı
- Reddit (
.zst), Voat (SQL), Ruqqus (.7z) dökümlerini girdi olarak kullanır
- Çoklu platform entegrasyonu: 3 platformu tek bir arşivde birleştirir. Platformu otomatik algılar ve birleşik aramayı destekler
- CLI bayrakları ve URL önekleriyle
/r/, /v/, /g/ yol yapısını sağlar
- Statik HTML dosyaları üreterek sunucu bağımlılığını ortadan kaldırır
- Yalnızca
index.html dosyasını açarak gezilebilir; harici ağ gerekmez
- Mobil öncelikli duyarlı yerleşim ve dokunma dostu gezinme
- Puan, yorum ve tarihe göre sıralama indeksleri ile sayfalama sunar
- JavaScript içermeyen, CSS tabanlı etkileşim
- PostgreSQL FTS yapısıyla platformlar arası birleşik tam metin araması sunar
- Anahtar kelime, yazar, tarih ve puan gibi ölçütlerle filtreleme
- Gönderi, yorum, kullanıcı, subreddit ve toplu sorguları içeren bir REST API sağlar
- Yapay zeka araçlarının arşivi doğrudan sorgulayabilmesi için bir MCP sunucusu içerir
- Claude Desktop veya Claude Code üzerinden gönderi, yorum, kullanıcı ve arama sorguları yapılabilir
- Her örnek başına on milyonlarca gönderi işlenebilir
- PostgreSQL yapısı sayesinde veri boyutundan bağımsız olarak bellek kullanımı sabit kalır
- Tüm 2.38B gönderi için konu bazlı birden fazla örneğe dağıtılmış çalışma önerilir
- Python, PostgreSQL, Jinja2 ve Docker tabanlı olarak uygulanmıştır (Claude Code genel geliştirme desteği olarak kullanılmıştır)
Dağıtım ve işletim senaryoları
- USB sürücüsü veya yerel klasör tabanlı çevrimdışı gezinmeyi destekler
- Yerel/homelab: Tek komutla HTTP veya Tor ortamında çalıştırma
- Üretim HTTPS: Otomatik Let’s Encrypt sertifika kurulumu (yaklaşık 5 dakika)
- Tor gizli servisi: Port yönlendirme olmadan
.onion adresiyle erişim
- Statik barındırma: GitHub Pages veya Codeberg Pages'a yüklenebilir (arama özelliği hariç)
- Docker tabanlı dağıtım: PostgreSQL dahil tam otomatik yapılandırma
- Çevrimdışı gezinme, yerel arama sunucusu, Tor/HTTPS eşzamanlı modu desteği
Kamuya açık bilgiler
1 yorum
Hacker News görüşleri
Arşivi self-host edebilmek için harika bir yol
Kişisel olarak, silinmiş yorumları ya da botların üzerine yazdığı yorumları otomatik olarak orijinal hâline geri yükleyen bir eklenti olmasını isterdim
Bugünlerde Reddit kullanmanın zor olmasının sebeplerinden biri, eski bağlantıların yarısının protesto amaçlı üzerine yazmalar yüzünden işe yaramaz yorumlara dönüşmüş olması
İronik olan şu ki orijinaller yapay zeka eğitimi için arşivlerde duruyor, ama kullanıcı açısından 2 yıl önceki yazıcı sürücüsü çözümü gibi şeyleri artık bulamıyorsun
Sitenin daha az kullanışlı hâle gelmesi zaten amaçlarıydı ve kullanıcıların ayrılmasını sağlamak protestonun özünü oluşturuyordu
Sırf bu kararı geçersiz kılmak için arşivleri kurcalamaya çalışmıyorum. Sadece devam ediyorum
Veriler torrent üzerinden alınabiliyor
Bağlantı: redd-archiver deposu
Hangi toplulukların önce korunacağına karar vermede yardımcı oluyor
Gerçekten harika bir proje
PushShift dışında da başka arşivler var — örneğin Arctic Shift ya da PullPush gibi, farklı veri setleri sunuyorlar
Silme talebi kapsamına göre dâhil edilen gönderiler veya yorumlar değişebiliyor
Bu veriye dayanarak merkeziyetsiz sosyal medyayı yeniden seed etmek mümkün olabilir mi diye düşünüyorum
Tıpkı bir projeyi fork etmek gibi
API de bunu destekliyor, böylece arşiv merkeziyetsiz biçimde ortaklaşa host edilebiliyor
Gerçekten ilginç bir proje
Merak ettiğim şey, Pushshift veri setinin düzenli olarak güncellenip güncellenmediği yoksa belirli bir zamana ait bir anlık görüntü mü olduğu
Self-host eden biri olarak yeni verileri düzenli aralıklarla yeniden indirmenin gerekip gerekmediğini bilmek isterdim
watchful1 veriyi bölüp yeniden işliyor; ileride Arctic Shift dump'ları çekilerek aylık güncellemeler desteklenecek
İlgili bağlantılar:
Ben de benzer bir proje üzerinde çalışıyorum ve Pushshift Reddit verisini Hugging Face Datasets üzerine yükledim
Torrent seed'i zayıf olduğunda huggingface.co/datasets/nick007x/pushshift-reddit adresinden tek tek dosyaları doğrudan alabilirsiniz
Aylık veriyi ya da belirli bir subreddit'i test etmek isteyenler için faydalı
Docker Compose ile yerel ortamı ayağa kaldırmayı denedim ama başarısız oldum
.env.exampledosyası yok ve ortam değişkenlerini elle ayarlayınca bile volume path sorunu çıkıyorBiraz daha cilalanması gerekiyor gibi görünüyor
mkdiradımı da güncellendiİlgili commit'ler: 0bb1039, c3754ea
Acaba artık ölü olan Apollo uygulamasıyla entegre edilip geçmişteki Reddit'in belirli bir anını yeniden oluşturmak mümkün olur mu diye merak ediyorum
Reddit'in tamamını bilgisayarımda tutmak istemiyorum
Keşke sadece belirli subreddit'leri seçebilsem
watchful1 veriyi subreddit bazında böldüğü için sadece istediğiniz kısmı indirebilirsiniz
2-3 yıl önce private'a alınmış subreddit'lerin veri dump'ına dâhil olup olmadığını kontrol etmenin bir yolu var mı diye merak ediyorum
Durum alanından private olup olmadığını görebilir, ayrıca daha pek çok ayrıntıya ulaşabilirsiniz