Browsh: A fully-modern text-based browser, rendering to TTY and browsers
10 hours ago
- #text-browser
- #terminal
- #low-bandwidth
- Browsh is a fully interactive, real-time, modern text-based browser that works in TTYs and browsers.
- It is useful for low-bandwidth connections (e.g., 3kbps) by offloading web page processing to a server via SSH.
- Unlike traditional text-based browsers, Browsh supports JavaScript and modern HTML5 features by using headless Firefox.
- It can be rendered in terminals or browsers, though terminal functionality is currently more feature-rich.
- Browsh is more efficient than VNC for extremely poor internet, supports MoSH for better connection stability, and doesn't require a separate client.
- It helps save battery on low-powered devices (e.g., Raspberry Pi) by running the browser remotely.
- Available as a binary (~11MB) or Docker image (~230MB). Requires Firefox.
- Supports most keyboard and mouse gestures like a desktop browser.
- Development requires Node.js (for the webextension) and Go (for the CLI).
- Testing includes webextension, CLI unit, E2E, and HTTP service tests.
- Credits: @tobimensch (feedback/testing), @arasatasaygin (logo).
- Licensed under GNU LGPL v2.1. Donations accepted.