- Earthstar उपयोगकर्ताओं के सीधे स्वामित्व और संचालन वाले निजी वितरित ऐप्स बनाने के लिए एक data specification और JavaScript library है
- नई Earthstar specification अब Willow-आधारित है, और Earthstar v11 फिलहाल beta में उपलब्ध है
- ऐप्स offline operation को डिफ़ॉल्ट मानकर live sync, अस्थायी दस्तावेज़, वास्तविक deletion, और music·photo·video storage को सपोर्ट करते हैं
- सर्वर वैकल्पिक हैं, लेकिन संचालन मॉडल हमेशा self-hosting है और यह blockchain या token पर निर्भर नहीं करता
- यह browser, Deno, और Node में चलता है और ed25519 verification, read-only access, streaming sync, multi-writer, और storage driver प्रदान करता है
Earthstar की भूमिका और वर्तमान स्थिति
- Earthstar user-owned applications बनाने के लिए database-जैसी specification और JavaScript library है
- नई Earthstar specification Willow पर आधारित है
- Earthstar v11 फिलहाल beta version के रूप में उपलब्ध है
- documentation, JavaScript API, specification, और chat app tutorial को मुख्य entry points के रूप में दिया गया है
offline-first ऐप्स के लिए फीचर्स
-
application features
- offline operation को सपोर्ट करता है
- live sync और Sneakernet तरीके को सपोर्ट करता है
- music, photo, और video storage संभव है
- अस्थायी दस्तावेज़ और डेटा की वास्तविक deletion को सपोर्ट करता है
- एक या कई identity का उपयोग किया जा सकता है
-
operating model
- server वैकल्पिक हैं
- संचालन मॉडल हमेशा self-hosting है
- blockchain और token का उपयोग नहीं करता
- “हर मायने में हमेशा के लिए मुफ़्त” का दावा करता है
-
technical features
- ed25519 verification को सपोर्ट करता है
- browser, Deno, और Node में चलता है
- read-only access permission दी जा सकती है
- efficient sync और streaming sync को सपोर्ट करता है
- कई devices पर एक identity का उपयोग किया जा सकता है
- multi-writer, storage driver, और document write permission को सपोर्ट करता है
1 टिप्पणियां
Hacker News टिप्पणियां
यह nostr से थोड़ा मिलता-जुलता है, लेकिन फर्क हैं। डेटा content-addressed नहीं बल्कि नाम-आधारित है, इसलिए overwrite और delete को सपोर्ट करता है, और raw data type भी messages का set नहीं बल्कि नाम से document तक जाने वाला associative array है
Documents को "shares" में बांधा जाता है, और किसी server को यह मानने के लिए कि उसके पास उस share के documents हैं, पहले "share address" जानना होता है। कुछ private और कुछ public वाला access model दिलचस्प है, और इस axis पर extreme चुनने वाले projects आमतौर पर संघर्ष करते हैं—मेरे हिसाब से अधिकतर ऐसा ही है
spammers और scammers को रोकने में यह शायद सफल होगा, लेकिन motivated attackers से निपटने वाले बड़े groups के मामले में मैं सतर्क रहूंगा। अगर कोई एक user public और private के बीच के धुंधले क्षेत्र में आने वाला share address expose कर देता है, तो लगता है उस share के सभी users उजागर हो जाते हैं
web of trust बेहतर होगा, जहां attacker को target खोजने से पहले trust graph के हर hop को तोड़ना पड़े, लेकिन users पर आने वाली complexity बहुत बढ़ जाती है, इसलिए simplicity के लिए granularity की कमी स्वीकार करने की वजह भी समझ आती है। उम्मीद है ऐसी चीजें सफल हों; ऐसा लगता है कि हमने web खो दिया है, और web जैसी चीज के बिना अहम समय पर बहुत से लोगों के लिए बड़े पैमाने पर coordination करना मुश्किल है
share address को ssh key की तरह treat करना चाहिए
मुझे ठीक से समझ नहीं आ रहा कि यह है क्या
क्या यह JavaScript से भरा कोई document/media database है? थोड़ा self-hosting oriented है, और Mastodon जैसा peer nodes पर replicate करता है? बड़ी vision लगती है, लेकिन साफ नहीं दिखती
Earthstar की distributed nature से क्या मिलता है, समझ नहीं आता। अगर बात backup की है, तो SQLite और PGlite में भी यह काफी आसान है। database users के अधिकतर हिस्से के लिए कोई बड़ा फायदा है, यह साफ नहीं दिखता
जो लोग अपने devices पर data store करते हुए उसे दूसरे individuals के साथ share करना चाहते हैं, और चाहते हैं कि उनके पास भी local copy हो, उनके लिए फायदा लगता है। शायद content की illegal sharing के लिए भी हो सकता है
दिलचस्प features जरूर हैं, लेकिन feature list के बीच vision धुंधली हो गई लगती है
मेरे हिसाब से इसे पहले आए Willow protocol [0] ने replace कर दिया है
मैंने Willow पढ़ने की कोशिश की, लेकिन बिल्कुल पकड़ नहीं बना पाया [1]। यह timestamps और crypto tokens के लिए ढेर सारे extra fields के साथ hierarchical key-value store जैसा दिखता है, लेकिन working examples बहुत कम हैं
हाल की Rust library [2] भी लगभग abstract classes का bundle है, और implementation बस errors throw करने के स्तर की है। यूरोपीय technical polish की स्थिति पर मजाक किया जा सकता है, लेकिन मैं शिष्ट मुस्कान के साथ आगे बढ़ूंगा
[0] https://willowprotocol.org/earthstar/spec/
[1] https://willowprotocol.org/specs/data-model/index.html#data_...
[2] https://github.com/earthstar-project/willow-rs/tree/main
[1] https://nlnet.nl/project/current.html
[2] https://nlnet.nl/funding.html
अगर Silicon Valley में बने software की quality को उन VC-funded projects से judge करें जो सफल नहीं हुए, तो फिर कोई जवाब नहीं
Willow के पीछे वाले लोग भी वही team लगते हैं: https://earthstar-project.org/docs/future#willow-protocol
https://willowprotocol.org/more/compare/index.html#compare_e...“ऊपर दिए गए सभी features हमारे नए Willow General Purpose Sync Protocol से संभव होते हैं, जिस पर हम काम कर रहे हैं। यह Earthstar से प्रेरित नया protocol है, और उसके concepts को refine और extend करता है। हम इस protocol की complete specification वाली नई website publish करने वाले हैं।”
“अगर Earthstar आपको Willow से बहुत मिलता-जुलता लगता है, तो यह संयोग नहीं है। Willow की शुरुआत Earthstar को फिर से imagine करने से हुई थी, और future Earthstar versions Willow पर build होंगे; Earthstar के core maintainer, Willow के दो authors में से एक हैं।”
क्या कोई Python client है? docs में Python से जुड़ा दिखने वाला सिर्फ यही है
# Earthstar timestamps in pythontimestamp = int(time.time() * 1000 * 1000)इसके बजाय मैं jellyfin, immich, और बाकी चीज़ों के लिए बस sftp की सलाह दूँगा। सिंक, नहीं, decentralization git, syncthing, rsync से की जा सकती है
अभी तक कोई ठीक-ठाक self-hosted identity manager या SSO जैसी चीज़ नहीं देखी। मुझे पता है bluesky कुछ ऐसा बना रहा है, लेकिन self-hosting संभव होगा या नहीं, पता नहीं। autocorrect ने Freudian तरीके से self hosting को self hostage में बदल दिया
homelab/private cloud में एक और समस्या जो अभी तक हल नहीं हुई है, वह है खुद CA बनना और सामने वाले को ssh सिखाए बिना मेरी मशीनों का access manage करना
मैं NordVPN के meshnet जैसी कोई चीज़ चाहता हूँ, जहाँ family plan में login किए हुए लोग एक-दूसरे की मशीनों को local network की तरह देख सकें। क्या wireguard से यह संभव है? yggdrasil भी कुछ ऐसा ही लगता है, लेकिन अभी गहराई से नहीं देखा है
“अच्छे” identity management से आपका मतलब OpenLDAP या 389 के अलावा कुछ है? अगर Windows की भी चिंता हो तो यह कितना fit बैठेगा, पता नहीं
खुद CA बनना आसान है, लेकिन उस CA को जिन-जिन मशीनों पर चाहिए उन सब पर install करना अच्छा नहीं लगता। Let’s Encrypt इस्तेमाल करें तो सब कुछ ठीक चलता है
Wireguard internet के जरिए दो LAN को जोड़ सकता है, लेकिन दोनों सिरों पर pfsense जैसे wireguard-supporting routers हों तो अच्छा है। नहीं तो हर client machine पर special routing settings install करनी पड़ती हैं। link के पार auto-discovery के लिए avahi को forward करने का तरीका अभी तक समझ नहीं आया
अब भी अफसोस है कि browser द्वारा SQLite support बंद करने के बाद ही मैं SQLite party में शामिल हुआ
इस पर कोई blog post सच में मददगार होगी। जैसे, इसे इस तरह design क्यों किया गया, alternatives क्या थे वगैरह
first impression दिलचस्प है। identity का key pair होना, और files व content को नाम से access कर पाना भी अच्छा है
क्या Python जैसी दूसरी language में implementation की संभावना है? सब कुछ पसंद है, बस JavaScript वाली बात अटकती है, और ऐसे use case में JavaScript इस्तेमाल करने को लेकर अभी भी सतर्क हूँ
अफसोस कि दोनों इतनी popular नहीं हैं, इसलिए आखिर में कई language implementations की माँग करनी पड़ती है, और ऐसे project के maintainer के लिए यह बोझ हो सकता है। खैर, reality यही है, और अगर ऐसी language नहीं है तो मुझे भी Python client library में interest होगा
“हमेशा self-hosted. server optional. कोई blockchain नहीं. कोई token नहीं. हर मायने में हमेशा free.”
यह सबसे बढ़िया thesis summary है