Spacedrive - ओपन सोर्स आधारित क्रॉस-प्लेटफ़ॉर्म फ़ाइल एक्सप्लोरर
(github.com/spacedriveapp)- Spacedrive एक cross-device data platform है जो कई डिवाइस और क्लाउड की फ़ाइलों को एक ही जगह पर संभालता है; यह फ़ाइल, ईमेल, नोट और बाहरी स्रोतों को index और search करता है तथा P2P के ज़रिए sync करता है
- यह Finder या Explorer को replace नहीं करता, बल्कि OS file manager के ऊपर local disk, external drive, NAS, cloud storage और archive data sources को search और browse करने वाली एक upper layer के रूप में काम करता है
- यह सभी फ़ाइलों को BLAKE3 content hash देता है, जिससे एक ही फ़ाइल को एक ही hash से पहचाना जा सकता है, और कई डिवाइसों में duplicate tracking तथा deduplication संभव होता है
- डिवाइसों के बीच sync, Iroh/QUIC आधारित P2P sync से direct connection के ज़रिए होता है; इसमें server, cloud या single point of failure के बिना metadata sync होता है और फ़ाइलें अपनी मूल जगह पर बनी रहती हैं
- S3, Google Drive, Dropbox, OneDrive, Azure और GCS को local storage के साथ cloud volumes के रूप में index किया जाता है, जबकि Gmail, Apple Notes, Chrome Bookmarks, Slack, GitHub आदि script-based adapters के ज़रिए searchable repositories बन जाते हैं
- Spacebot के साथ integration के ज़रिए एक अलग वैकल्पिक process में AI agent runtime चलाया जाता है; इसमें Spacedrive data, permissions और execution layer संभालता है, जबकि Spacebot intelligence की ज़िम्मेदारी लेता है
- हर Spacebot instance एक Spacedrive node के साथ pair होता है, और वही node agent authentication, device graph बनाए रखना, permission resolution और peer device tasks को forward करने का काम करता है
- फ़ाइल पढ़ना, shell commands और tasks, Spacedrive के माध्यम से target device तक proxy किए जाते हैं, और permission system यह तय करता है कि कौन-से device, path, task और किन लोगों की पुष्टि आवश्यक है
- enable होने पर index किए जाने वाले records, searchable बनने से पहले Safety Screening pipeline से गुजरते हैं
- Prompt Guard 2, local classifier की मदद से email, messages और documents में prompt injection का पता लगाता है
- trust layers, isolation system और content fencing के माध्यम से flagged records को AI agent queries से बाहर रखा जाता है और desktop app में review के लिए उपलब्ध कराया जाता है
- मुख्य architecture में Virtual Distributed Filesystem, content identification system, transactional actions और leaderless sync शामिल हैं
- फ़ाइलें और folders physical location से स्वतंत्र objects बन जाते हैं, और हर फ़ाइल के पास
SdPathaddress होता है जो कई डिवाइसों पर काम करता है - फ़ाइल operations, execution से पहले preview, approval या cancellation की सुविधा देते हैं, और durable jobs के रूप में network interruption तथा device restart को सहन कर सकते हैं
- फ़ाइलें और folders physical location से स्वतंत्र objects बन जाते हैं, और हर फ़ाइल के पास
- implementation, Rust single crate और CQRS/DDD architecture पर आधारित है, और प्रमुख technologies में Tokio, SQLite, SeaORM, sqlx, Iroh, BLAKE3, LanceDB, FastEmbed, OpenDAL, Tauri 2, React Native, React 19, Vite, TanStack Query, Tailwind CSS v4 और Specta का उपयोग होता है
- desktop app, macOS·Windows·Linux को target करता है, जबकि mobile app iOS·Android के लिए है; साथ ही CLI, daemon, headless server और browser client structure भी मौजूद है
- run requirements में Rust 1.81+, Bun 1.3+, just, और adapters के लिए Python 3.9+ शामिल हैं; development commands के रूप में
just setup,just dev-desktop,just testका उपयोग किया जाता है - privacy और security model local-first है; P2P traffic QUIC/TLS से encrypted है, library में SQLCipher के ज़रिए disk encryption संभव है, और tracking या analytics telemetry नहीं है
- license FSL-1.1-ALv2 Functional Source License है, जो 2 साल बाद Apache 2.0 में बदल जाता है
1 टिप्पणियां
Hacker News की राय
इंस्टॉल करने के तुरंत बाद लाइब्रेरी बनाने, analytics डेटा शेयर करने और login की मांग की, इसलिए दूसरे file explorers से अपेक्षा अलग लगी
drive की किसी random directory में जाकर double-click किया, लेकिन कुछ नहीं हुआ; context menu से खोलने पर भी वही
बाद में पता चला कि अगर किसी directory में 15,000 फाइलें हों, तो practically browse करना असंभव हो जाता है
Total Commander और Windows Explorer में यह समस्या नहीं है, इसलिए लगता है Spacedrive को पहले basic file exploration functionality और polish करनी चाहिए
यहां कुछ replies के उलट, Spacedrive को large-scale data को ध्यान में रखकर design किया गया है; यह Location को पहले से index करके cache बनाता है, और हर चीज़ को cache व virtualize करता है
अगले update में Location न होने वाली जगहों को browse करते समय आने वाला bug ठीक करने की योजना है, और लगता है कई users Location के रूप में जोड़ने से पहले पहले browse करके देखते हैं
यह अभी alpha software है, इसलिए उम्मीद है कि समय के साथ इसे refine किया जाएगा
सिर्फ developers को दोष देना मुश्किल है; मेरे हिसाब से framework को default तौर पर इसे support करना चाहिए
virtualized lists समझना अनिवार्य नहीं होना चाहिए
SwiftUI से TableView बनाते समय, internal behavior के बारे में कुछ न जानते हुए भी मैं हजारों items scroll कर पाया था
sort order cache नहीं है, इसलिए अगर alphabetical order के अलावा किसी और तरीके से खोलें, तो sorting में 5 मिनट से ज्यादा इंतजार करना पड़ता है
काफी समय पहले जब देखा था, तो खुद try करने के लिए कोई release package नहीं था, इसलिए सोचा था कि बाद में तैयार होने पर देखूंगा; लगता है एक घंटे पहले alpha version आया है, इसलिए फिर HN पर आया है
concept अपने-आप में अच्छा लगा
आजकल strict local files और कई cloud storage services के बीच की सीमा धुंधली हो गई है
निजी तौर पर मैं वह सीमा बनाए रखता हूं और Mac पर cloud storage लगभग mount नहीं करता, लेकिन मेरी academic पत्नी Dropbox, iCloud Drive, Google Drive और Microsoft वाले storage, सब संभालती हैं
क्योंकि साथ काम करने वाले लोग हर service से files share करते हैं और review collaboration करते हैं
अगर ऐसा tool vendor-specific connection issues और अजीब behaviors को छिपाकर, local जैसा दिखने वाला लेकिन पीछे किसी भी cloud storage से जुड़ा हो सकने वाला transparent file system दे सके, तो workflow में काफी मदद मिलेगी
core बात usability है; अगर latency ज्यादा हुई और यह Finder से धीमा महसूस हुआ, तो संभावना कम हो जाएगी
संभव है कि Hacker News इस product का ideal user base न हो
यहां के लोगों के पास पहले से ही अपना optimized workflow होने की संभावना ज्यादा है, और मेरे साथ भी यही है
यह product Windows और Mac इस्तेमाल करने वाले लेकिन terminal से परिचित न होने वाले digital creators के लिए ज्यादा fit हो सकता है
जैसे animators, illustrators, video editors, 3D artists, music producers, YouTubers, streamers
हालांकि यह दूसरा group सच में ऐसी चीज चाहता है या नहीं, मुझे ठीक से नहीं पता
marketing देखकर समझ नहीं आता कि software exactly क्या करता है, और शायद उस group के साथ भी यही होगा
वे “universal file experience” कहना चाहते हैं, यह समझ आता है, लेकिन इसका concrete मतलब क्या है, अस्पष्ट है
users को features समझने के लिए software install करना पड़े, ऐसा नहीं होना चाहिए
open source होना या Linux पर चलना भी उनके लिए बहुत important नहीं लगता
इस stage पर मैं marketing को पूरी तरह नए सिरे से बनाकर उस दूसरे group के हिसाब से optimize करता
किसी PR person या marketing expert के साथ मिलकर, आप जो value बना रहे हैं उसे concrete और efficient तरीके से communicate करना बेहतर होगा
साथ ही team effort बचाने के लिए शायद source repository हटा देता और Linux version भी बंद कर देता, या demand आने तक उसे private रखता
शुभकामनाएं
मैं काफी समय से इसे देख रहा हूं और कुछ feedback है
एक local development directory को index करने में अब तक 35 मिनट से ज्यादा लग चुके हैं, और शायद मैं अंत तक इंतजार नहीं करूंगा
जैसा दूसरों ने कहा, latency समस्या है
macOS M1 14-inch base model पर Location add करने के बाद भी folder खोलने और files दिखने में कभी-कभी 2–4 सेकंड लगते हैं
अगर मैंने कुछ miss नहीं किया है, तो लगता है अभी tabs नहीं हैं
file sorting और grouping features बहुत कमजोर हैं या practically नहीं हैं, लेकिन development के दौरान सुधार होगा ऐसा लगता है
reasonable indexing state बनाने के लिए Location manually काफी add करने जैसे users को बहुत काम करना पड़ता दिखता है
local-first बात समझ आती है, लेकिन telemetry और login वाला तरीका मुझे बिल्कुल पसंद नहीं आया
कुल मिलाकर खुद इस्तेमाल करके थोड़ा निराश हुआ, इसलिए संभव है यह मेरे लिए न हो, लेकिन इसका target user हो सकता है और अभी इसे लंबा रास्ता तय करना है
दिखने में यह सच में अच्छा है
समझ नहीं आता इसे React में क्यों बनाया गया
Rust में Qt जैसा GUI framework नहीं है, यह समझता हूं, लेकिन क्या सच में यही जवाब है?
क्या इसलिए कि कुछ नया सीखना नहीं चाहते थे?
C++ app या Qt से यह आसानी से बनाया जा सकता है, GUI QML में लिखा जा सकता है, और scripting language के रूप में Lua, Python, JavaScript भी जोड़े जा सकते हैं
बेशक, इसमें काम तो है
browser में render करना, OpenGL जैसी GPU API से GUI बनाने के आसान version जैसा है
operating system में पहले से GUI tools मौजूद हैं, तो वही इस्तेमाल किए जा सकते हैं
बाकी यह काफी ठीक दिखता है, लेकिन लगता है pcmanfm जैसी चीजें भी remote locations add करना support करती होंगी
एक और बात जानना चाहता हूं कि Prisma क्यों इस्तेमाल किया गया है
Tauri में high-performance काम या operating system integration की जरूरत होने पर Rust तक उतरना आसान है, और major platforms के लिए packaging भी पहले से मौजूद है
React इस्तेमाल करने से ढेर सारे UI components वाले शानदार ecosystem का फायदा मिलता है
यह ज्यादातर native Rust GUI frameworks से अलग है
साथ ही frontend engineers और उनकी web tech तथा designer collaboration skills reuse की जा सकती हैं
कहा जा सकता है कि वे Qt जितने mature नहीं हैं, लेकिन browser में चलने वाली चीजों की तुलना में कई मामलों में पर्याप्त होते हैं
यह repository अभी शुरुआती alpha stage में है और known bugs भी बहुत हैं, फिर भी GitHub stars इतने ज़्यादा हैं—यह थोड़ा यकीन करना मुश्किल है
ऊपर से ऐसा लगता है कि इसे VC funding मिली है, जो langchain या pinecone को funding मिलने से भी ज़्यादा confusing लगता है
वे कम से कम AI-based projects तो हैं, लेकिन यह project ऐसी category में है जिस पर पहले ही बहुत काम हो चुका है
भले ही यह हमेशा free रहे, मुझे नहीं लगता लोग इसे चाहेंगे; और अगर इसमें ads, tracking या monthly subscription आ गया तो तो बिल्कुल भी नहीं चाहेंगे
मूल रूप से, भरोसा करने की कोई खास वजह नहीं है और शक करने की कई वजहें हैं
यह कोई personal attack नहीं है, लेकिन अगर आपने इस नजरिए पर विचार नहीं किया है, तो करना बेहतर होगा
“welcome” के बाद पहली screen login है
समझ नहीं आता कि file explorer के लिए login क्यों करना पड़े, यह दौर अजीब है
login की वजह यह है कि यह remote file system है
इसे file explorer की बजाय Dropbox जैसा सोचना ज़्यादा सही होगा
अगले update में यह बदलने वाला है
आखिरकार login Tailscale की तरह devices को जल्दी connect करने का तरीका बन जाएगा
बिखरे हुए cloud और local, mounted storage और unmounted storage—इन सभी के लिए searchable और browsable meta index निश्चित रूप से दिलचस्प है, और काफी समय से यह एक तरह का holy grail रहा है
digital asset management कोई नया concept नहीं है, लेकिन फिलहाल यह ऐसा क्षेत्र नहीं है जहाँ बहुत ज़्यादा choices हों
Portfolio या Adobe की complex product suite ऐसी कई capabilities देती हैं, लेकिन उनका focus cloud storage की बजाय workflow और metadata पर ज़्यादा होता है
आजकल एक और cloud-dependent service अपनाने से पहले बहुत सावधानी बरतनी पड़ती है
“local और offline files समेत सभी files” जैसी संवेदनशीलता को देखते हुए self-hosting/on-premises एक absolute requirement हो सकती है
अगर account की जरूरत है, तो लोग OIDC या SAML के जरिए मौजूदा identity management के साथ integration चाहेंगे
अगर यह tool पूरी files को देखने का essential single pane बन जाता है और उसके ऊपर workflows बनाए जाते हैं, तो ऐसी continuity features भी चाहिए होंगी जिनसे availability पर भरोसा हो सके
इसे आगे बढ़ाते रहें
अभी तक किसी ने इसे पूरी तरह solve नहीं किया है
project अच्छा दिखता है और इसकी ambition भी पसंद आई
कुछ notes हैं
सभी WAN access के लिए एक साफ़ toggle रखें, और analytics data या usage data भेजने के लिए अलग toggle रखें, लेकिन default off होना चाहिए
और भी बेहतर होगा अगर इन्हें compile-time flags बना दिया जाए
पहले Warp नाम का नया terminal बहुत आकर्षक था, लेकिन वह by default network पर data भेजता था, इसलिए कई लोगों के लिए वह तुरंत deal-breaker बन गया
Windirstat और Everything से खूब inspiration लें, और खास तौर पर Everything की search performance को target बनाएं
roadmap में देखा है, लेकिन फिर भी कहूँगा कि tabs चाहिए
Prisma से दूर जाने पर भी विचार करें
यह database को बहुत ज़्यादा wrap करता है और इसमें magic भी बहुत है
शायद मेरी reasoning कमजोर हो, लेकिन थोड़ा डर है कि कहीं आप कभी license न बदल दें
README की शुरुआत में आने वाले written in Rust को feature की तरह treat करना अब बंद किया जाना चाहिए
ऐसी line देखते ही मुझे “यह ज़्यादा stable होगा” नहीं, बल्कि “यह किसी का hobby project है” जैसा लगता है
अगर README की बात है, तो open source project में relevant detail के तौर पर इसे डालना ठीक लगता है