Chawan TUI वेब ब्राउज़र
(chawan.net)- Chawan एक नया TUI वेब ब्राउज़र है जो टेक्स्ट-आधारित टर्मिनल में काम करता है
- यह 0.2.0 संस्करण MVP चरण की सभी आवश्यक सुविधाएँ शामिल करता है और इसमें कोई गंभीर बग नहीं है
- केवल libssh2, libbrotli, OpenSSL/LibreSSL लाइब्रेरी अनिवार्य हैं, और पुराने संस्करणों की कई dependencies हटा दी गई हैं
- amd64 Linux के लिए static binary और .deb package भी उपलब्ध हैं, जिससे distribution और installation आसान हो जाती है
- अगले संस्करण का लक्ष्य layout module की performance में सुधार और बेहतर UI अनुभव है
Chawan 0.2.0 का परिचय
Chawan टर्मिनल यूज़र इंटरफ़ेस (TUI) आधारित एक हल्का वेब ब्राउज़र है, जिसे टेक्स्ट वातावरण में आसानी से वेब ब्राउज़ करने के लिए डिज़ाइन किया गया एक open source प्रोजेक्ट है। यह 0.2.0 संस्करण minimum viable product (MVP) चरण की सभी प्रमुख सुविधाओं से लैस पहली स्थिर रिलीज़ है, और अभी तक कोई प्रमुख गंभीर बग रिपोर्ट नहीं हुआ है।
वितरण और इंस्टॉलेशन
- source tree का tarball उपलब्ध है, और यदि आप सीधे compile करना चाहते हैं तो README के निर्देशों का पालन कर सकते हैं
- amd64 Linux के लिए static binary distribution उपलब्ध है, जिसे archive extract करने के बाद
make installकमांड से आसानी से install किया जा सकता है- हटाने के लिए
make uninstallका उपयोग किया जा सकता है
- हटाने के लिए
- वही distribution .deb package रूप में भी उपलब्ध है, जिसे Debian-आधारित सिस्टम पर सीधे install किया जा सकता है
package managers के लिए जानकारी
- Chawan की अनिवार्य runtime dependencies इस प्रकार हैं:
- libssh2
- libbrotli (libbrotlicommon, libbrotlidec सहित)
- OpenSSL(3.0 या उससे ऊपर) या LibreSSL (OpenBSD 7.7 संस्करण पर परीक्षण किया गया)
- पहले के development version में उपयोग होने वाले zlib, libseccomp, termcap/ncurses, libcurl आदि अब आवश्यक नहीं हैं, इसलिए उन्हें dependencies से हटा दिया गया है
- यदि packaging के दौरान कोई issue आता है, तो patch करने से पहले developer से संपर्क करना बेहतर होगा, क्योंकि समस्या को upstream में सीधे हल करने की संभावना अधिक है
आगे की योजना
- यह 0.2.0 रिलीज़ अपेक्षा से अधिक समय लेने के बावजूद, सभी MVP सुविधाएँ पूरी होने के बाद आधिकारिक वितरण के लिए चुना गया संस्करण है
- v0.2 branch में आगे केवल bug fixes किए जाएँगे, जबकि नए features master branch में जोड़े जाते रहेंगे
- अगली रिलीज़ में layout module की performance और accuracy में सुधार तथा UI की user-friendliness बेहतर बनाना मुख्य लक्ष्य हैं
प्रोजेक्ट का महत्व और फायदे
- Chawan टर्मिनल वातावरण के लिए अनुकूलित वेब ब्राउज़र है, जिससे resource-सीमित server और environments में भी web content तक पहुँचना संभव होता है
- मौजूदा text web browsers के विपरीत, यह आधुनिक encryption और compression protocols के समर्थन तथा न्यूनतम dependencies जैसी विशेषताओं से अलग पहचान रखता है
- open source होने के कारण यह आगे के विस्तार और customization के लिए अनुकूल है
1 टिप्पणियां
Hacker News टिप्पणियाँ
जब भी मैं nim में लिखा कोई प्रोजेक्ट देखता हूँ तो अच्छा महसूस करता हूँ। मुझे हमेशा लगा है कि nim, C/C++ और python के बीच कहीं स्थित सबसे दिलचस्प भाषाओं में से एक है। nim कम्युनिटी के आकार की तुलना में उसके उपयोगकर्ताओं की उत्पादकता बहुत ऊँची लगती है, इसलिए भले ही मैं nim को बहुत गहराई से न जानता हूँ, फिर भी मुझे लगता है कि उसके बारे में मेरी धारणा सही है। अफसोस है कि nim मुख्यधारा में अधिक नहीं बढ़ पाया।
shiomiru, मैं जानना चाहता हूँ कि TTY से जुड़ी अवधारणाएँ सीखने के लिए सबसे अच्छे resources कौन से हैं। मुफ़्त हों या paid, कोई भी recommendation चलेगी। TTY के बारे में मैं linusakesson.net का यह परिचयात्मक लेख जानता हूँ, लेकिन इसकी सीमा यह है कि यह termcap/terminfo/curses तक नहीं जाता। दूसरे कमेंट में O'Reilly की Termcap & Terminfo किताब का ज़िक्र है (इसे online यहाँ देखा जा सकता है)
Chrome-आधारित एक और engine का इस्तेमाल किए बिना, थोड़े research के लिए आज़माने का कोई नया तरीका मिलना हमेशा अच्छा लगता है। आज जो चीज़ दिखाई गई, उसे मैं स्कूल के बाद खुद टेस्ट करने के लिए उत्साहित हूँ। sixel न होने वाले environments में खास तौर पर काम आने वाले एक बहुत शानदार alternative के रूप में chromium का terminal port: carbonyl सुझाऊँगा। मूल लेखक अब इसे सक्रिय रूप से develop नहीं कर पा रहे हैं, इसलिए इसकी functionality काफी सीमित है, और keyboard shortcuts, file saving जैसी कई चीज़ें अभी supported नहीं हैं। लेकिन Web compatibility और इसकी ताज़गी बहुत प्रभावशाली है। उम्मीद है कि rust जानने वाला कोई व्यक्ति इस प्रोजेक्ट को आगे बढ़ाएगा। कुछ महीने पहले जब मैंने देखा था, तब तक कोई लोकप्रिय fork नहीं था।
ऐसे प्रोजेक्ट सच में बहुत अच्छे लगते हैं। काश text-based sites की कोई list होती। मेरी निजी पसंद की दो sites हैं plaintextsports.com और lite.cnn.com।
कमाल है। मैंने इसे Lenovo M8 4th gen पर termux में source से build करके देखा, और सिर्फ nim install करना पड़ा। बिना root user के भी इसका साफ़-सुथरा installation हो जाना काफी प्रभावशाली लगा।
यह सचमुच बहुत सुंदर implementation है। मैं इसे अपने कई कामों में वास्तविक उपयोग में लेकर देखना चाहता हूँ कि यह कितना आगे तक जा सकता है। HN साइट इसमें बहुत आराम से पढ़ी जाती है।
मैं हमेशा कोशिश करता रहा हूँ कि मेरी वेबसाइट Links में भी अच्छी दिखे, और अब ऐसा लग रहा है कि एक नया candidate आ गया है। कुछ CSS support होने की वजह से elements के बीच spacing जैसी चीज़ों पर अब और सोचना पड़ेगा। Links में margin/padding पूरी तरह ignore हो जाते थे, इसलिए menus वगैरह को एक लाइन में साफ़-सुथरे ढंग से रखना आसान था, लेकिन अब स्थिति थोड़ी ज़्यादा पेचीदा हो गई है।
यह बहुत शानदार प्रोजेक्ट है, और nim में बना होना इसे और भी अच्छा बनाता है। लेकिन
cha example.comटाइप करने पर मुझे basic commands (hjkl वगैरह) का इस्तेमाल बिल्कुल समझ नहीं आ रहा। number keys दबाने पर नीचे बाईं ओर कुछ दिखता है, लेकिन उसके अलावा कुछ भी प्रतिक्रिया नहीं होती। मैंने इसे MacOS Sequoia 15.5 Apple Silicon और Nim 2.24 environment में खुद build किया। वेबपेज ठीक से load हो जाते हैं, लेकिन commands काम नहीं कर रहे। समझ नहीं आ रहा कि मैं कुछ मिस कर रहा हूँ या यह कोई bug है।यह दिलचस्प है कि यह termcap/ncurses का अब इस्तेमाल नहीं करता। क्या इसका मतलब है कि terminal handling सीधे खुद करता है?
macOS पर सिर्फ एक
makecommand से इसका आसानी से build हो जाना काफी प्रभावशाली लगा। elinks के लिए कोई आधुनिक alternative मिलना अच्छा है।