9 ms·
Text-based web browsers
- rickcarlino 9mo ago> Text-based browsers and modern HTML, no success story in sight. Given the progress we see in web technologies, the gap will only widen, so much so that w3m and its friends might fall into oblivion. This is a fun article and the conclusion is very real. People shit on Gemini:// because “The web can support text documents”. They say this as if they are actually proposing a real solution. It’s true that the web _can_ support lightweight content (IE5 on Windows 3.1- I was there man), but the problem is that it _won’t_ because it consistently chooses not to. If you’ve ever tried to actually perform this experiment of running the web in text mode you will quickly realize how futile it truly is. Every step you take on a well meaning site like lite.cnn.com is just one click away from transferring you to a bloated SPA app that renders a blank screen on a text-based browser. You can disable JavaScript, or disable images or whatever hoops you want to jump through (increasingly hidden with every FireFox release that goes by) but that’s not going to actually work long term. The web is too extensible and feature hungry to support text based content. It’s better to just use the web for the usual cool shit like WASM and WebRTC or whatever and admit that no one can help themselves and no amount of awareness is going to make the cookie consent banners go away. Let’s take Gemini more seriously because it already has adoption and it works and it’s not perfect but it sure as fuck isn’t substack.
- esseph 9mo agoHmmm I have no idea how this would work just brainstorming. Could you.. use some browser backend to render the page to a PDF, then an LLM to scrape the content and display it as text? I know it wouldn't be exactly efficient, but...
- worksonmine 9mo agoA more pragmatic approach would be to run the content through something like readability[0] but leaves navigation untouched. The AI could hallucinate and add content that isn't in the original, something accessibility tools don't. [0]: https://github.com/mozilla/readability https://github.com/mozilla/readability
- ploum 9mo agoThis is exactly what Offpunk is doing: displaying the html page after it passed throught Readability. https://offpunk.net https://offpunk.net The whole page is still available with "view full" (or "v full") In the current trunk, if configured, it uses ftr-site-config rules to extract content for specific websites ( https://github.com/fivefilters/ftr-site-config https://github.com/fivefilters/ftr-site-config ) I do 90% of my browsing using Offpunk (reading blogs and articles) and, suprizingly, it often works better than a graphical browser (no ads, no popup, no paywall). Of course, it doesn’t work when you really needs JS.
- anthk 9mo agoDillo uses something similar with rdrview, you can use rdrview://$URL (altough I hacked the dpi plugin to use the rd:// 'protocol' for shortness). It lacks the filter thingy but now has the dilloc tool where it can print the current URL, open a new page... and with sed you can trivially reopen a page with an alternative from https://farside.link https://farside.link You know, medium.com -> scribe.rip and the like. But Dillo is not a terminal browser, altough it's a really barebones one and thanks to DPI and dilloc it can be really powerful (gopher, gemini, ipfs, man, -info in the future) and so on available as simple plugins, either in sh, C or even Go) and inspiring for both offpunk and w3m (where it has similar capabilities as Dillo to print/mangle URL's and the like). What I'd love is to integrate Apertium (or any translating service) with Dillo as a plugin so by just running trans://example.com you could get any page translated inline without running tons of Google propietary JS to achieve the same task. I love the https://linux.org.ru https://linux.org.ru forum and often they post interesting setups but I don't speak Russian.
- ploum 9mo agoSo you mean that someone use LLM to generate a website full of JS, post a text in it and then we use LLM to try to rebuild the original content? If only we had a way to just share text without all those steps…
- esseph 9mo agoYou're misunderstanding. You go to site with your text browser. An LLM loads and renders the content in memory and then is helping to convert that to a text only interface for your tui browser to display and navigate. Apparently other systems are using a similar method.
- harendra007 9mo agoQuick question on gemini://, I have no idea what gemini:// is but I typed gemini:// on my mac and it prompted to open my iterm shell. Is this a normal behavior, I am using chrome browser.
- filmor 9mo agohttps://en.wikipedia.org/wiki/Gemini_(protocol) https://en.wikipedia.org/wiki/Gemini_(protocol) It is a simpler web and requires a separate browser or a plugin. It's difficult to find resources on it nowadays because of Google Gemini...
- ks2048 9mo agoThere's a tool called lsregister on macOS to show claimed schemes for different apps. Mine shows for iTerm2, claimed schemes: ftp:, gemini:, gopher:, http:, https:, iterm2:, mailto:, news:, nntp:, ssh:, telnet:, titan:, wais:, whois:, x-man-page:
- ploum 9mo agoProbably because you could install Terminal Gemini clients like Amfora or Offpunk.
- thunderbong 9mo agoTotally valid points. By the way, only on re-reading your comment, I realised you're taking about the Gemini protocol and not the AI engine!
- rglullis 9mo agoWhat's the difference between "let's encourage people to create gemini documents" and "let's encourage people to publish text/markdown documents on the www"?
- ploum 9mo agoThat’s subtle but the Gemtext format is really really constrained, which forces people to do one thing: write text. Nothing else. So, when you are on Gemini://, you know that you will only encounter linear text. You will read stuff, written by other people. It is really relaxing. I’m a huge fan of Gemini. I would advice to start your Gemini journey by reading links on Antenna and Cosmos (which are link aggregators) https://offpunk.net/gemini.html https://offpunk.net/gemini.html
- rglullis 9mo ago> I’m a huge fan of Gemini. I'm not. I get the whole "the medium is the message" and why it feels appealing to some, but I don't subscribe to the idea that the only way to have proper digital hygiene is by restraining myself to this ascetic channel. I'd rather encourage more people to put content on the web in whatever form they think is best, and I'll let it up to my user agent to filter out the noise.
- wibbily 9mo agoThe dream of course would be both: if you’re already writing textual content you might as well publish it on both protocols, so anyone can get to it with any tool they like. Gemtext can be trivially converted up to Markdown, the opposite is lossy but very doable.
- ploum 9mo agoI’m such a Gemini fan that I’m developing a browser which try to extract content from webpages to turn them into Gemini pages ;-) And it works Offline too by caching every request: https://offpunk.net https://offpunk.net
- anthk 9mo agoAdd a limit on catching (requests per second); if not, tons of Gopher servers will kick me out fast by syncing most phlogs in batch mode :) Also, there's no way to reuse w3mimgdisplay in the same way w3m works for the web? Finally, I can't find a way to display images with 256 colours by default even if the TERM variable it's set to xterm-256color . And, no, I can't use sixels by default under OpenBSD's xterm. Sixel and maybe tektroniks support are disabled at build time. EDIT: a good start for w3mimgdisplay: https://web.archive.org/web/20210920101125/http://blog.z3bra.org/2014/01/images-in-terminal.html https://web.archive.org/web/20210920101125/http://blog.z3bra...
- qznc 9mo agoI really like reading text with variable-width fonts. Gemini requires fixed-width fonts due to its terminal-based approach. Thus, I have no desire to use it ever.
- SuperNinKenDo 9mo agoI've only dabbled in Gemini so I don't know their names off the top of my head, but I tried out a number of GUI Gemini browsers in the past, and they're quite nice. Easy on the eyes, simple design, all the variable width fonts you could ask for if that's your bag.
- ploum 9mo agoNo. There are graphical browser like Lagrange. It is up to you.
- qznc 9mo agoOh, I got that wrong. Thank you for pointing me to it. Now I'll go down that rabbit hole...
- CIPHERSTONE 9mo agoGemini is my go to now when I need a recipe. Pick a recipe site, any recipe site, and its guaranteed to be the most painful experience on mobile, and slightly less painful on a laptop experience you have on the web. Pure fucking trash. And if you happen to be a recipe publisher who does this and is reading this, fuck you. Enter Gemini. It consistently can give me a text only version of the recipe that I can copy into a notes app if I want with zero pain. Zero. Now I have my own set of "wtf are you doing Gemini" and "why are you halucinating on this request" experiences at work with Gemini, but recipe extraction.. the goat.
- fenwick67 9mo agoWrong Gemini, the above poster is talking about the protocol, you are talking about the LLM
- xelxebar 9mo agoOne of my favorite pieces of software is edbrowse[0]. Perhaps surprisingly, I find it quite useful: - Main developer is blind, so accessibility has priority; - Easily scriptable; think automating captive portal clickthroughs; - Reading articles (e.g. Wikipedia) feels closer to reading a book; - It even supports JavaScript to a degree! - The affordances of line-oriented editing carry over nicely. In particular, when using line-oriented interfaces, it's quite natural to build up a small collection of context-dependent snippets from documentation, source code, sample code, whatever. Putting a small collage of these on the screen is effortless and an experience I do miss with other UI paradigms. The main developer appears to tinker on the project daily and is quite nice to chat with over on libera's #edbrowse. The project does have a small, dedicated following, but I wish more people knew about it! [0]:https://github.com/edbrowse/edbrowse https://github.com/edbrowse/edbrowse
- anthk 9mo agoI used to use that to fetch odd Japanese translated ROMs from CD Romance. Inb4 some Copyright holder says "buy them legally"... these games won't be released in the West ever. In Europe most people played Earthbound (and USA only releases for SNES/MD) under emulators. That's how Nintendo put it in the Super Smash Bros roster. They say the hate emulation; but these tools cemented themselves into retroemulation like no other system, and helped to bring new sagas to the West. For free. You say you lost money because of retro-piracy? You got free marketing for physical scraps technically resting in a warehouse. Altough nowadays I'm 100% pro libre gaming; tons of indie/FOSS philosophy overlap: FreedroidRPG, Battle for Wesnoth, Nethack/Slashem, ReTux, SuperTux2... Back to edbrowse, it's a mail, irc and SQL client too; and you can script it, a la ed/vi, so you can do magic here.
- ploum 9mo agoedbrowse is awesome. I fear that most people, like OP in this case, don’t really understand the difference between "TUI" (where a terminal is used to display a GUI) and "CLI", where every interaction is a written command resulting in a output. I’ve a perfect sight myself but I really like the comfort of linearity with CLI: I ask my computer something, I receive an answer. (that’s probably why I’m developping my own CLI browser but is more graphical and less advanced than edbrowse)
- dieggsy 9mo agoThe top comment in the article mentions it, but chawan[1] is really quite neat. Many sites are still have their quirks (or may be broken), but I think it's the closest I've seen a text browser approximate a "real" browser. The support for CSS, JS, and images (depends on your terminal) is already quite impressive even if imperfect. To my knowledge it's an actual browser implementation rather than "cheating" by using an existing browser like browsh (which is still quite cool). [1] https://chawan.net/ https://chawan.net/
- balazs4 9mo agoThis! `chawan` is really good. I use it very often, and it looks very promising. If you are into „browsing the web in terminal“, you should try it.
- mariusor 9mo agoYep, that's me. :) It's cool when blogs incorporate ActivityPub comments to them. I liked chawan from the first time it was shown here on HN, https://news.ycombinator.com/item?id=44293260 https://news.ycombinator.com/item?id=44293260. It made me add support for CSS Grid API in my sites targeting text browsers.
- AdInside6 9mo agoAnother impressive TUI browser would be https://codeberg.org/janantos/brow6el https://codeberg.org/janantos/brow6el
- Koshkin 9mo ago> text-mode web browser > inline images inside the terminal Now I'm confused
- dredmorbius 9mo agoImage support has been present in numerous terminal-mode browsers for many years if not decades, generally implemented through the framebuffer, though in some cases the browser will spawn an external image viewer (presuming a graphical environment, e.g., Xorg / Wayland).
- prmoustache 9mo agoMost of the features mentionned in this blog post seem really anti-user to me: Popover seems to be a way to do popup that you can't really block. Also having content you want to hide?
- bjourne 9mo agoCookie pop-ups are mandatory so you need something.
- prmoustache 9mo agoNo, they are only mandatory if you use third party cookies and tracking platforms. Consent is not necessary for strictly functional first party cookies. Session and shop cart cookies are examples of that. This very site you are commenting on doesn't need a cookie consent form/popup for example. The presence of a cookie banner in the first place is a sign that the website you are visiting is run by a bad actor who is into selling your profile and browsing data.
- ploum 9mo agoIt should be said again and again that: 1. There’s no law requiring a cookie popup. 2. In Europe, most Cookie popup are, in fact, completely illegal 3. Most cookie popup come from the same actor who designed them to be, on purpose, as annoying as possible in order to decrease the popular support for the EU GDPR law. https://www.bitecode.dev/p/there-is-no-eu-cookie-banner-law https://www.bitecode.dev/p/there-is-no-eu-cookie-banner-law
- neoCrimeLabs 9mo agoThis cannot be repeated enough.
- al_borland 9mo agoIs there a central place to report bad actors for #2 so the EU goes after them?
- PeterStuer 9mo agoHow does Cloudflare handle text-based browsers? Do they immediately flag them as bots?
- peetistaken 9mo agoYes
- dredmorbius 9mo agoPoorly.
- noduerme 9mo agoSadly and disgustingly, I fired up lynx last night and found out that Google will not allow you to search with it anymore. I guess this change happened a few months ago and there was an HN thread about it[0], but I hadn't noticed until now. Going to altavista still works great (even though it just redirects you to yahoo ;) [0] https://news.ycombinator.com/item?id=45201692 https://news.ycombinator.com/item?id=45201692
- michaelanckaert 9mo agoI often use DuckDuckGo in HTML mode (https://html.duckduckgo.com/html/ https://html.duckduckgo.com/html/) when I'm using EWW in Emacs.
- Tmpod 9mo agoThere's also the even more barebones DDG Lite: https://lite.duckduckgo.com https://lite.duckduckgo.com I use it often when on very slow or metered connections (still find some of those around).
- mrweasel 9mo agoFor many, if not most, of the sites I regularly visit, text based browsers work surprisingly fine. My main complaint is actually the structure of the html. In many cases sites could improve massively, if they moved navigation to below the actual content. Having a large vertical menu taking up the entire screen as the first thing you see is slightly annoying.
- mariusor 9mo agoI mentioned it in another comment, but @media: grid[1] support can help distinguish the user agents that are text-mode. [1] https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@media/grid https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/A...
- demetris 9mo agoI did that that recently for a couple of personal projects and I like it. I think I will start doing it for client sites too. https://omnicarousel.dev https://omnicarousel.dev The main navigation menu is just above the site footer in the HTML document. Question for people who know that stuff: What is the recommended way of hiding features that require JavaScript on browsers that do not support JavaScript, e.g., on w3m?
- miki123211 9mo ago> The main navigation menu is just above the site footer in the HTML document. Just letting you know, that stuff is a bit confusing to screen reader users. Though I really wish we standardized on putting content first, like mobile apps do. At least we woulnd't haave to explain to new screen reader users why getting to the f???ing article is so damn hard if you don't know the right incantations to do it quickly.
- demetris 9mo agoThank you! Would a Jump to navigation link next to Skip to content make this arrangement better for screen reader users?
- 9mo ago
- RockieYang 9mo agoNiche idea. It could filter out a lot of noise
- charcircuit 9mo ago>w3m and its friends might fall into oblivion. w3m's marketshare has always been nonexistent. It already has been in oblivion. Having a GUI is key to making a good web browser that will be used by people.
- rhdunn 9mo agoText-based browsers are useful in cases where you don't have access to a graphical display, for example: 1. your graphics driver isn't loading/working; 2. you can't log into the GUI due to a bug in the login screen; 3. you are working on a server that is headless, i.e. doesn't have a GUI installed, or are SSHing into a server/other machine. I've experienced (2) a while ago and more recently there was another issue recently with upgrading breaking a system [1]. I also encountered the latter but was unable to keep the terminal open due to that bug (it kept switching back to the login screen), so I had to boot into a system via a USB stick, chroot into the system, then install the uninstalled desktop package. [1] https://www.gamingonlinux.com/2025/04/ubuntu-25-04-upgrades-halted-due-to-kubuntu-users-getting-a-broken-desktop/ https://www.gamingonlinux.com/2025/04/ubuntu-25-04-upgrades-...
- charcircuit 9mo ago>your graphics driver isn't loading/working This is a bigger problem that should be fixed ASAP. OS vendors should never critically break graphics on a OS like this. >you can't log into the GUI due to a bug in the login screen; Again, the QA department or automated tests of your OS vendor should not let this get released. If such a bug happened there should be a fix rolled out immediately. >you are working on a server that is headless Why do you need to run the browser on the server? I can't think of a case where you would want to use a text browser there instead of a regular browser on your actual machine. >so I had to boot into a system via a USB stick, chroot into the system, then install the uninstalled desktop package. It's disappointing that you had to manually fix it compared to it just downloading a fix automatically like what would happen on Windows, Mac, iOS, Android, etc.
- anthk 9mo ago
- tvali 9mo agoThey could be used in bloody fast AI crawling and browse, for example dynamic webbased finetuning which involves non-static content: I think GET requests are safe in this matter.
- yashasolutions 9mo agoInteresting find mentioned in the comments - https://chawan.net/ https://chawan.net/
- sylware 9mo agoYou do not need much more than a semantic 2D table with proper navigation ids. Does wonders with basic HTML forms. You can augment it with a simple CSS in order to give to it a nice look. A troubling issue is "border" in semantic tables: they are a semantic information, not style, it should not be deprecated. Tested edbrowse javascript, hardly anything works. Maybe the edbrowse developer should get closer to netsurf libraries and work there on quickjs support.
- cons0le 9mo agoCarbonyl is still the goat https://github.com/fathyb/carbonyl https://github.com/fathyb/carbonyl
- thw_9a83c 9mo agoFrom the article: In this article I’m not going to include the admittedly cool browsh, because... These browsers are cool but I didn't know about browsh [1]. That one is also really cool. Thanks! [1]: https://www.brow.sh/ https://www.brow.sh/
- tcbawo 9mo agoI had an idea once for connecting an old 8-bit computer to the modern web by connecting to a text-based web browser running on another device using the terminal. Maybe one day when I find more time.
- cess11 9mo agoYou can get some of the way there with an Amiga.
- maxglute 9mo agoWould be nice to have local model inject web content and spit out reader mode text on every page.
- moron4hire 9mo agoThe note that someone told them DataList might be bad for accessibility is the first I'm hearing of it. Does anyone know what is meant by this? This reminds me of a problem I've been having with some accessibility issues: maybe, sometimes, occasionally, the accessibility problems a site has aren't the authors' fault but the fault of the folks writing the screen reader software. I've tried using screen reader software and it is an awful experience. It's nearly impossible to create a good experience for screen readers because they are all their own, unique microcosm of unstandardized garbage and bugs.
- daveoc64 9mo agoIt's covered on MDN: https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/datalist#accessibility https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/...
- jibal 9mo ago> and what enrages me the most So go fork and fix an open source browser to your satisfaction.
- icar 9mo ago> When viewing a web page in a text-based browser, you essentially get plain HTML, no CSS, no JS. There is some “styling”, a result of the elements’ semantics, but don’t expect anything fancy, we are down to colors, indentation, and centered text. Reminds me of Gemini protocol. https://gemini.circumlunar.space/ https://gemini.circumlunar.space/
- Imustaskforhelp 9mo agoI think it might be offtopic but is there any way that there are minimalist browsers which can work on let's say vps's but I wouldn't need to host a complete vnc server or set up with the debugging port magic of puppeteer or chrome I think browsh which is a text based web browser is the most recommended for something like this but browsh doesnt map things 1 to 1 and there are still some issues. I wish if there was a simple browsh alternative which could use new image protocols in terminal (I think kitty protocol or other comes to my mind) to basically act as a complete browser. Does anyone know of anything like this? I sometimes like the idea of just leaving a tab completely open 24x7 on a vps, I feel like there can be interesting data which can happen because of it. Thoughts?
- siraben 9mo agobrowsh and carbonyl[0] are such lifesavers on airplane wifi. I find that carbonyl has even better chromium rendering than browsh. [0] https://github.com/fathyb/carbonyl https://github.com/fathyb/carbonyl
- Koshkin 9mo agoA.k.a. "terminal-based"
- Koshkin 9mo agolinks is my favorite file browser and pager
- ynac 9mo agoHaving to navigate to and from online plain text files (usually .txt) I like a browser to recognize addresses with or without HTTP and see them as links. It's a surprisingly tricky feature to find in browsers (right click, grab and ask, etc.). I wrote a tiny browser to do just that for the command line and it's cute and all, but I'm anxious to interview all the browsers in here to see which have this ability.
- apitman 9mo agoIf websites removed all CSS and JS, they could still provide almost all the worthwhile content that's currently available, and browsers could become user agents again.
- postalrat 9mo agoAI can make sense of the page with CSS, JS, etc and transform the page for the preferences of the user. A true user agent.
- godelski 9mo agoHonestly, with terminal emulators these days I'd love to see a new attempt at making a TUI based browsers. I don't need video, but we got sixel these days for images. But being able to stay in my terminal or put a Google search docs or some other thing in a tmux pane would be really awesome. I'm sure the LLMs would love them too, if that helps for any motivation.
- deleted 9mo ago[deleted]
- sedatk 9mo agoI remember using Lynx as a daily driver 30 years ago. It was fast, and barely had any compatibility issues because HTML that time was simpler. I remember using it as a daily driver. A GUI browser would be handy with image-heavy web sites, but those would take ages to load anyway. It seems like Lynx failed to guide new standards, and that hindered the development of web in a text-compatible way. So, we ended up with this where Lynx is probably not usable at all today. It would have been a net win for accessibility too if we always had Lynx et al in our sights.
- deleted 9mo ago[deleted]