[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3223":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":33,"readmeContent":34,"aiSummary":35,"trendingCount":16,"starSnapshotCount":16,"syncStatus":36,"lastSyncTime":37,"discoverSource":38},3223,"browsh","browsh-org\u002Fbrowsh","browsh-org","A fully-modern text-based browser, rendering to TTY and browsers","https:\u002F\u002Fwww.brow.sh",null,"JavaScript",18865,473,183,228,0,3,15,83,14,89.83,"GNU Lesser General Public License v2.1",false,"master",true,[27,28,29,30,31,32],"bandwidth-saver","http-performance","mosh","ssh","tty","vnc","2026-06-12 04:00:16","[![Follow @brow_sh](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fbrow_sh.svg?style=social&label=Follow)](https:\u002F\u002Ftwitter.com\u002Fintent\u002Ffollow?screen_name=brow_sh)\n\n![Browsh Logo](https:\u002F\u002Fwww.brow.sh\u002Fassets\u002Fimages\u002Fbrowsh-header.jpg)\n\n**A fully interactive, real-time, and modern text-based browser rendered to TTYs and browsers**\n\n![Browsh GIF](https:\u002F\u002Fmedia.giphy.com\u002Fmedia\u002FbbsmVkYjPdOKHhMXOO\u002Fgiphy.gif)\n\n## Why use Browsh?\n\nNot all the world has good Internet.\n\nIf you only have a 3kbps internet connection tethered from a phone,\nthen it's good to SSH into a server and browse the web through, say,\n[elinks](https:\u002F\u002Fgithub.com\u002Fbrowsh-org\u002Fbrowsh\u002Fissues\u002F17). That way the\n_server_ downloads the web pages and uses the limited bandwidth of an\nSSH connection to display the result. However, traditional text-based browsers\nlack JS and all other modern HTML5 support. Browsh is different\nin that it's backed by a real browser, namely headless Firefox,\nto create a purely text-based version of web pages and web apps. These can be easily\nrendered in a terminal or indeed, ironically, in another browser. Do note that currently the browser client doesn't have feature parity with the terminal client.\n\nWhy not VNC? Well VNC is certainly one solution but it doesn't quite\nhave the same ability to deal with extremely bad Internet. Terminal \nBrowsh can also use MoSH to further reduce bandwidth and increase stability\nof the connection. Mosh offers features like automatic\nreconnection of dropped or roamed connections and diff-only screen updates.\nFurthermore, other than SSH or MoSH, terminal Browsh doesn't require a client\nlike VNC.\n\nOne final reason to use terminal Browsh could be to offload the battery-drain of a modern\nbrowser from your laptop or low-powered device like a Raspberry Pi. If you're a CLI-native,\nthen you could potentially get a few more hours of life if your CPU-hungry browser\nis running somewhere else on mains electricity.\n\n## Installation\n\nDownload a binary from the [releases](https:\u002F\u002Fgithub.com\u002Fbrowsh-org\u002Fbrowsh\u002Freleases) (~11MB).\nYou will need to have [Firefox](https:\u002F\u002Fwww.mozilla.org\u002Fen-US\u002Ffirefox\u002Fnew\u002F) already installed.\n\nOr download and run the Docker image (~230MB) with:\n    `docker run --rm -it browsh\u002Fbrowsh`\n\n## Usage\nMost keys and mouse gestures should work as you'd expect on a desktop\nbrowser.\n\nFor full documentation click [here](https:\u002F\u002Fwww.brow.sh\u002Fdocs\u002Fintroduction\u002F).\n\n## Development\n\n### The Firefox Web Extension\nThis is needed to run essential JS inside web pages so that they render in a way that Browsh can consume.\n\nYou will need to install `nodejs`, usually available from your OS package manager. Though for development purposes the recommended method is with https:\u002F\u002Fmise.jdx.dev. \n\nThen in the `webext` directory\n* `npm install`\n* `npx webpack --watch`\n\n### The `browsh` Golang code\nYou will need to install `go`, usually available from your OS package manager. Though for development purposes the recommended method is with https:\u002F\u002Fmise.jdx.dev. \n\nThen in the `interfacer` directory\n* `go run .\u002Fcmd\u002Fbrowsh --debug`\n\nLogs will be available in `interfacer\u002Fdebug.log`\n\n## Tests\n\nFor the webextension: in `webext\u002F` folder, `npm test`    \nFor CLI unit tests: in `\u002Finterfacer` run `go test src\u002Fbrowsh\u002F*.go`    \nFor CLI E2E tests: in `\u002Finterfacer` run `go test test\u002Ftty\u002F*.go`    \nFor HTTP Service tests: in `\u002Finterfacer` run `go test test\u002Fhttp-server\u002F*.go`    \n\n## Special Thanks\n  * [@tobimensch](https:\u002F\u002Fgithub.com\u002Ftobimensch) For essential early feedback and user testing.\n  * [@arasatasaygin](https:\u002F\u002Fgithub.com\u002Farasatasaygin) For the Browsh logo.\n\n## Donating\nPlease consider donating: https:\u002F\u002Fwww.brow.sh\u002Fdonate\n\n## License\nGNU Lesser General Public License v2.1\n","Browsh是一款现代化的基于文本的浏览器，能够将网页渲染到TTY终端和浏览器中。它利用无头Firefox作为后端，支持JavaScript及HTML5等现代网页技术，从而在低带宽环境下提供完整的网页浏览体验。Browsh特别适合于网络条件较差（如仅3kbps）或需要节省电量的场景下使用，通过SSH或MoSH连接服务器进行网页浏览，不仅减少了本地设备的数据传输负担，还增强了连接稳定性。此外，对于偏好命令行界面的用户来说，Browsh提供了另一种高效访问互联网的方式。",2,"2026-06-11 02:52:54","top_language"]