1
0
Fork
You've already forked aread
0
Reformat web pages for easier reading and send them to Kindle devices
  • Go 87.1%
  • CSS 5.7%
  • JavaScript 4.9%
  • HTML 2.3%
2026年07月09日 20:01:50 +09:00
build Link to build report in README.md and remove build tags. 2021年12月15日 12:36:13 -04:00
chrome chrome: Switch back to Ctrl+Shift and bump to v14. 2022年06月24日 11:13:04 -04:00
common common: Fix Config.GetPath for path-less base URLs. 2024年02月23日 10:20:51 -04:00
db Move to codeberg.org/derat/aread. 2023年04月15日 18:37:44 -04:00
proc Fix various issues reported by staticcheck. 2026年05月08日 17:33:26 -06:00
static add vertical padding to page blockquotes 2016年12月07日 20:14:29 -07:00
.gitignore Add .gitignore. 2020年04月25日 16:05:52 -04:00
go.mod Update Go to 1.25.12 for govulncheck. 2026年07月09日 20:01:50 +09:00
go.sum Run "go mod tidy". [skip ci] 2026年05月08日 07:41:46 -06:00
handler.go Fix various issues reported by staticcheck. 2026年05月08日 17:33:26 -06:00
handler_test.go Fix various issues reported by staticcheck. 2026年05月08日 17:33:26 -06:00
LICENSE Document Config and add README.md and copyright/license info. 2020年04月27日 13:17:52 -04:00
main.go Move to codeberg.org/derat/aread. 2023年04月15日 18:37:44 -04:00
README.md Fix build status URLs in README.md. [skip ci] 2024年06月07日 19:22:38 +08:00

aread

Build Status

This is a Go server that downloads and simplifies web pages so that they can be read later. Simplification happens via Mercury Parser, and the resulting pages are also converted to Amazon's .mobi format using KindleGen and sent to a Kindle device. One of the design goals was to use no JavaScript in the web interface.

Configuration

Install Mercury Parser and KindleGen.

Create a directory (e.g. /var/lib/aread) and create a config.json file corresponding to the Config struct in common/config.go. Also create url_patterns.json, bad_content.json, and hidden_tags.json as described in the same struct.

Then run a command like aread --config=/var/lib/aread/config.json.

If AppArmor is installed, a file similar to the following can be placed in the appropriate location (e.g. /etc/apparmor.d/usr.local.bin.kindlegen) to restrict the kindlegen process:

# vim:syntax=apparmor
#include <tunables/global>
/usr/local/bin/kindlegen {
 #include <abstractions/base>
 owner /var/lib/aread/pages/** r,
 owner /var/lib/aread/pages/*/** w,
 owner /tmp/** rw,
 /tmp/ rw,
}