InkFeed is a native Qt 6 / Qt Quick app tuned for e-ink: a calm, high-contrast reading experience, fast page turns, and everything on-device. It runs on the 2026 InkPad One (model PB1030, RK3566) and builds on desktop Linux for development.
- Mosaic home — a card grid of the latest articles, grouped by feed, with favicons.
- Reader mode — when a feed only ships a teaser, InkFeed fetches the page and extracts the readable article (libxml2 heuristic), images and all.
- Collections — organise feeds into groups; reorder, move, mark read/unread.
- Add feeds by URL or by keyword search (Feedly's public discovery API).
- OPML import and export.
- Bookmarks, with the same card view and full-text search.
- e-ink first — g-sensor auto-rotation, adjustable article font (pinch to zoom), light/dark following the reader, and a crisp 1:1 render on the panel.
- Localised — English, Nederlands, Español, Français, Deutsch.
Download the latest inkfeed-inkpad-one-<version>.zip from the
Releases page, then follow
docs/install.md — copy the files onto the reader and register the
app in the Applications menu. No firmware modification required.
sudo apt-get install -y build-essential cmake ninja-build \
qt6-base-dev qt6-declarative-dev \
libfreetype-dev zlib1g-dev libcurl4-openssl-dev libxml2-dev
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/inkfeed-test # backend tests
./build/inkfeed # run the app on the desktopThis needs the PocketBook armhf SDK (its cross-toolchain, Qt 6 sysroot, and
libinkview) — the Linux build above does not. This build uses the SDK 6.11
(RK3566) release from
Sean-on-Git/PocketBook-SDK,
which matches the InkPad One's SoC. (PocketBook also publishes older SDKs at
github.com/pocketbook.)
By default CMake expects the extracted SDK next to this repo at
../pocketbook-sdk-6.11/…/arm-buildroot-linux-gnueabihf_sdk-buildroot; point it
elsewhere with -DSDK_PATH=/path/to/…_sdk-buildroot. The host system's Qt rcc is
used for resources (see the note in CMakeLists.txt).
cmake -S . -B build_arm -DTARGET_TYPE=ARM -DCMAKE_BUILD_TYPE=Release # add -DSDK_PATH=… if needed
cmake --build build_arm
# -> build_arm/inkfeed.app (32-bit ARM ELF)
scripts/package-inkpad-one.sh build_arm/inkfeed.app # version from git; builds the install zipReleases are built automatically by GitHub Actions on every v* tag. The ARM job
needs a POCKETBOOK_SDK_URL repository variable pointing at the SDK tarball; without
it, that job is skipped and only the Linux artifact is published.
include/ shared headers
src/core/ rss/atom parsing, readability, sync, i18n
src/storage/ SQLite database
src/utils/ HTTP (libcurl), image cache
src/main_qml.cpp entry point
src/qml_bridge.cpp C++ <-> QML controller
src/qml_models.cpp list models (feeds, cards, article body)
qml/ Qt Quick UI
res/ icons + translations
platform/pocketbook/ device launcher script
tests/ backend tests
docs/ install guide + device dev notes
- docs/install.md — installing on the reader.
- docs/inkpad-one-dev-notes.md — hard-won technical notes on building native apps for the InkPad One (the EGL QPA, the devicePixelRatio quirk, g-sensor rotation, custom icons, audio routing, and more). Useful to anyone developing for this device.
Built by Joost Rohde, in collaboration with the following AI: Anthropic Opus 4.8, DeepSeek V4 Flash, and MiMo V2.5.
Inspired by Thud.
MIT © 2026 Joost Rohde