- HTML और CSS render कर सकने वाला ब्राउज़र सिर्फ 3 दिनों में एक व्यक्ति और एक LLM एजेंट ने Rust में खुद implement किया
- प्रोजेक्ट लगभग 20,150 लाइनों के कोड में पूरा हुआ, जिसमें scroll, back, headless mode जैसी बुनियादी सुविधाएँ शामिल हैं
- बाहरी Rust लाइब्रेरी के बिना Windows, macOS, Linux पर चलने के लिए डिज़ाइन किया गया
- डेवलपमेंट प्रक्रिया Codex एजेंट के साथ collaboration में चली, जहाँ इंसान ने coordination और verification संभाला और एजेंट ने कोड लिखा
- नतीजे के तौर पर ‘एक व्यक्ति + एक एजेंट’ का संयोजन कई एजेंटों से अधिक efficient होने का उदाहरण सामने आया
प्रोजेक्ट अवलोकन
- लक्ष्य था HTML और CSS को render कर सकने वाला एक बेसिक ब्राउज़र पूरी तरह नए सिरे से बनाना
- JavaScript समर्थित नहीं है
- डेवलपर ने इसे “मज़े के लिए” शुरू किया था और LLM एजेंट (Codex) के साथ collaboration में आगे बढ़ाया
- 3 दिनों में पूरा करना, बाहरी Rust dependency पर रोक, तीनों प्रमुख OS का समर्थन जैसी शर्तें तय की गईं
- ब्राउज़र में अपना rendering engine है, और इसमें screenshot सुविधा, link click, तथा regression test फीचर शामिल हैं
Day 1 – शुरुआती implementation
- “Hello World” render करने से शुरुआत हुई और nested tag handling तथा screenshot सुविधा जोड़ी गई
- HTML/CSS spec तय किए गए, और E2E test के लिए image comparison सुविधा लाई गई
- एक ही दिन में यह X11 और cURL का उपयोग करके वेबसाइट fetch कर render करने के स्तर तक पहुँच गया
- कोडबेस लगभग 7,500 लाइन का था, और सभी फाइलें 1,000 लाइनों से कम रखी गईं
Day 2 – फीचर विस्तार
- टेस्ट के दौरान विंडो खुलने की समस्या सुलझाने के लिए --headless mode जोड़ा गया
- विंडो resize, compatibility, performance, font rendering में सुधार किए गए
- workflow ऐसा था कि वेबसाइट screenshot साझा किए जाते थे और Codex उन्हें पुन:निर्मित करता था
- ज़्यादातर कोड एजेंट ने लिखा, जबकि इंसान ने review और approval संभाला
Day 3~4 – समापन और cross-platform support
- scroll, debug log, back button जैसे ब्राउज़र के ज़रूरी फीचर जोड़े गए
- macOS और Windows support implement किया गया और tests pass हुए
- CI integration और release build पूरी हुई, कुल डेवलपमेंट समय लगभग 72 घंटे रहा
परिणाम और कोड आँकड़े
- अंतिम कोडबेस लगभग 20,150 लाइन और 72 फाइलों से बना है
- मुख्य फाइलों में
layout,style,platform,browserजैसे modules शामिल हैं - Cargo.lock खाली है, यानी बाहरी Rust package के बिना पूरी तरह standalone चल सकता है
- GitHub से CI-built binaries और source code सीधे डाउनलोड किए जा सकते हैं
मुख्य सीख
- एक व्यक्ति + एक एजेंट का संयोजन हज़ारों एजेंटों के उपयोग से अधिक efficient है
- एक अकेला एजेंट लंबे समय तक एक ही कोडबेस पर काम करके वास्तविक प्रगति ला सकता है
- ऐसा मॉडल कई लोगों के लिए, जहाँ हर किसी के पास अपना एजेंट हो, विस्तार योग्य हो सकता है
- रफ़्तार धीमी करना ही कभी-कभी तेज़ और बेहतर परिणाम दे सकता है
- एजेंट को संचालित करने वाले इंसान की भूमिका सिस्टम डिज़ाइन से भी अधिक महत्वपूर्ण हो सकती है
- निष्कर्षतः, “क्या कई एजेंट लगाने से डेवलपमेंट तेज़ होगा?” इस सवाल पर
यह एक ऐसा उदाहरण है जो दिखाता है कि एकल इंसान-एजेंट collaboration अधिक व्यावहारिक और efficient हो सकता है
4 टिप्पणियां
मुझे ज़्यादा जानकारी नहीं है, लेकिन Hacker News की रायों में जो
simon의 블로그आता है, वह कैसा ब्लॉग है कि उसका बार-बार ज़िक्र होता रहता है...?Simon Willison की ब्लॉग पोस्ट का Hacker News पर इतना ज़्यादा ज़िक्र होने की वजह शायद यह है,
यह शायद Hacker News में 2025 के सबसे लोकप्रिय ब्लॉगों में नंबर 1 रहा ब्लॉग है। इसकी प्रतिष्ठा अपनी जगह है, और प्रकाशित होने वाले लेखों की संख्या भी काफ़ी ज़्यादा है, इसलिए मुझे लगता है कि आम Hacker News उपयोगकर्ता के नज़रिए से यह ऐसा ब्लॉग है जिस पर सबसे अधिक बार जाया जाता है, और इसी वजह से इसे स्वाभाविक रूप से एक मानक सूचक की तरह माना जाता होगा।
Hacker News की टिप्पणियाँ
मुझे लगता है कि यह Cursor के FastRender से कहीं बेहतर code-generation browser डेमो है
यह लगभग 20 हज़ार लाइनों के Rust में है, काफ़ी छोटा है, image·text rendering के लिए सिर्फ system libraries का उपयोग करता है, और कोड भी पढ़ने में आसान है
उदाहरण के लिए flexbox implementation code देखें, यह काफ़ी स्पष्ट है
मैंने अपने ब्लॉग को render करने वाला screenshot भी डाला है; यह CSS gradients और SVG icons को अच्छी तरह संभालता है, लेकिन PNG में विफल रहता है
मुझे लगा था कि HTML+CSS rendering browser parallel agents के डेमो के लिए परफ़ेक्ट task होगा, लेकिन यह एक coding agent से भी संभव हुआ, यह चौंकाने वाला है
महत्वपूर्ण बात सिर्फ बहुत सारे tokens खर्च करना नहीं है, बल्कि agents का प्रभावी उपयोग कैसे किया जाए यह है
मैंने भी कई बार प्रोजेक्ट बनवाए और कुछ दिनों बाद उन्हें छोड़ दिया। agent बिना feedback के बस वही करता है जो कहा जाए, इसलिए अगर दिशा ग़लत हो तो वह और गहरा गड्ढा खोदता जाता है
Claude अगर अजीब दिशा में चला भी जाए, तो सही agent structure होने पर उसे वापस लाया जा सकता है
मैं अभी evaluator·researcher·implementer agents को अलग करके प्रयोग कर रहा हूँ
score के आधार पर tests बढ़ाए जाते हैं या failures के कारणों की जाँच की जाती है, और सुधार न हो तो commit को discard कर दिया जाता है
ऐसी संरचना code quality management के लिए कहीं अधिक फ़ायदेमंद है
जब code सस्ता और फेंकने योग्य हो गया है, तब workflow खुद बदलना चाहिए
1 इंसान + 1 agent ने 5 million dollar, 1.6 million LOC वाले browser को हरा दिया — यह ‘David vs Goliath’ जैसी कहानी लगती है
AI अभी भी एक black box है, इसलिए हर कोई प्रयोग करते हुए दिशा खोज रहा है
2026 को अभी सिर्फ एक महीना हुआ है, आगे कौन-कौन से प्रयोग सामने आएँगे यह दिलचस्प होगा
अगर Simon समय-समय पर HN की 2026 prediction thread की समीक्षा करें तो मज़ेदार होगा
3 दिन की सीमा रखी गई, और नियम बनाया गया कि Rust third-party crates के बिना सिर्फ OS की default libraries का उपयोग करके X11/Windows/macOS को support करना है
यह लगभग 20K LOC में पूरा हुआ, जिनमें 14K लाइनें engine की हैं और 6K लाइनें platform support code की
source code और binaries सार्वजनिक किए गए हैं
अब machine-readable test suites की वजह से काम बहुत अधिक efficient हो गया है
पहले IE का व्यवहार ही लगभग standard माना जाता था, लेकिन अब Google·Apple जैसी कंपनियाँ standardization में योगदान देती हैं, इसलिए स्थिति काफ़ी बेहतर है
features से अलग, ऐसे codebase का security audit कैसा होगा, यह जानना दिलचस्प है
Rust मदद करेगा, लेकिन क्या सिर्फ language guarantees काफ़ी हैं, इस पर संदेह है
Rust सिर्फ बुनियादी memory errors को रोकता है, local file access जैसी चीज़ों को नहीं
JS engine नहीं है, इसलिए data exfiltration मुश्किल है, लेकिन audit किया जाए तो कई गंभीर vulnerabilities निकल सकती हैं
community browserBench का इंतज़ार कर रही थी, इसलिए इसकी शुरुआत देखकर खुशी है
browser सबसे जटिल software में से एक है, इसलिए ऐसी कोशिशें सीमाओं के मूल्यांकन के benchmark बनेंगी
20K लाइनों में browser बनाना समझना मुश्किल है
सिर्फ zlib ही 12K लाइनों का है, इसलिए लगता है कहीं कुछ छूटा तो नहीं
क्या यह सिर्फ OS rendering calls कर रहा है, यह जानना चाहता हूँ
कौन-सी libraries उपयोग हुई हैं, यह README में स्पष्ट लिखा है
मैंने इसे चलाकर देखा, rendering काफ़ी अव्यवस्थित लगी
link colors या underline एकसमान नहीं हैं, और Windows में back button काम नहीं करता
फिर भी HN homepage या Simon का ब्लॉग काफ़ी अच्छी तरह render हो जाता है
लक्ष्य था कम LOC में मिलती-जुलती functionality लागू करना
default stylesheet नहीं है, इसलिए link colors एकसमान नहीं हैं
Windows 11 में back button काम करता है। अगर आप Windows 10 पर हैं, तो शायद वही कारण हो सकता है
Simon के ब्लॉग को render करना शायद AI browser का प्रतिनिधि लक्ष्य बन जाएगा
लेकिन अभी यह असली browser से ज़्यादा एक renderer के स्तर का है
Servo जैसे projects में AI अगर API implementation को पूरक करे, तो वह और प्रभावशाली होगा
फिर भी यह Cursor की कोशिश से बेहतर है, और कम से कम “यह compile होता है” इतना तो प्रगति है
अगर यह अकेले किया जाता, तो कितना समय लगता, यह जानने की जिज्ञासा है
agent की मदद को समझने के लिए यह जानना ज़रूरी है कि उस guidance में expertise की गहराई कितनी थी
मुझे Rust आता है, लेकिन X11 या macOS, Windows API नहीं आते थे, इसलिए शुरुआत करना भी मुश्किल होता
हालाँकि tests·infrastructure·design का मेरा अनुभव agent के साथ सहयोग करने में काम आया
इस project का 2000 के मानक पर अनुमान 4.58 person-years, 610K dollar,
और 2025 के मानक पर 5.6 साल, 1.38 million dollar का निकलता है
यह लेख इसलिए दिलचस्प है क्योंकि इसका फ़ोकस नतीजे पर नहीं, बल्कि बनाने की प्रक्रिया और constraints पर है
ज़्यादातर लेख परिणाम या लेखक पर केंद्रित होते हैं, लेकिन यह process-centered insight देता है
इसलिए यह खोजने में अधिक अर्थ लगा कि वास्तव में कठिन हिस्सा क्या है, और किस प्रक्रिया में गड़बड़ी हो रही है
प्रभावशाली काम है
accessibility को Rust dependencies के बिना लागू करना कैसे होगा, यह जानने की उत्सुकता है
Windows/macOS पर यह UI Automation और NSAccessibility से संभव है, लेकिन X11 पर