You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
gardenapple 0b71370b58
v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun
1 week ago
locales Dual Node/Deno package! 11 months ago
.gitignore gitignore: Add *.css 2 years ago
LICENSE.md Add GPL-3.0 license 3 years ago
README.md v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
common.mjs v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
deno.json deno lint 11 months ago
deno.lock v2.4.3 release: update deps, fix #13, broaden default Deno permissions (fix zsh completion) 1 week ago
index.js v2.4.3 release: update deps, fix #13, broaden default Deno permissions (fix zsh completion) 1 week ago
package-lock.json v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
package.json v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
readability-cli.1 v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
readability-cli.1.md v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago
readable.ts v2.4.4 release: revert Deno env restrictions, remove mention of (broken) Bun 1 week ago

README.md

readability-cli

Firefox Reader View in your terminal!

readability-cli takes any HTML page and strips out unnecessary bloat by using Mozilla's Readability library. As a result, you get a web page which contains only the core content and nothing more. The resulting HTML is suitable for terminal browsers, text readers, and other uses.

Here is a before-and-after comparison, using an article from The Guardian as a test subject.

Standard view in W3M

An article from The Guardian in W3M

So much useless stuff that the main article does not even fit on the screen!

readability-cli + W3M

An article from The Guardian in W3M using readability-cli

Ah, much better.

Installation

readability-cli can run via either Node.js or its newer and safer Rust counterpart Deno.

Node.js

Install the program and its man page:

npm install -g readability-cli

(Note to package maintainers: it might be a good idea to provide a symlink, so the man page can be accessed either as readability-cli(1) or as readable(1))

Deno

Deno support is still in development, running the script directly with deno run <URL> is not supported.

However, you can clone this Git repository and easily run the readable.ts script.

git clone https://gitlab.com/gardenappl/readability-cli/
cd readability-cli
./readable.ts

You can use deno run with the locally-downloaded script to fine-tune permissions, for example:

curl https://example.com | deno run --no-check readable.ts

By default Deno does not allow reading & writing files or accessing the network, meaning you have to rely on piping data in and out.

Read more about Deno permissions in their manual.

(Package maintainers might consider adding a readable-sandbox executable which will run readable with restrictions)

Arch Linux

Arch Linux users may use the "official" AUR packages:

Usage

readable [SOURCE] [options]

readable [options] -- [SOURCE]

where SOURCE is a file, an http(s) URL, or '-' for standard input

See readability-cli(1) for more information, and usage examples.

Localization

See locales.

Why Node.js? It's so slow!

I know that it's slow, but JavaScript is the most sensible option for this, since Mozilla's Readabilty library is written in JavaScript. There have been ports of the Readability algorithm to other languages, but Mozilla's version is the only one that's actively maintained as of 2020.