Looking for the working version? PaperPi version 1 is on the
v1branch. See its install instructions. The last state of version 1 is marked with the tagv1-final.
PaperPi shows information (weather, clocks, music, comics and more) on e-paper displays attached to a Raspberry Pi.
This branch (main) holds PaperPi version 2, which is being written from scratch. It is not usable yet.
- Support for the IT8951 displays (such as the Waveshare 9.7") on Raspberry Pi OS "trixie"
- A web page for changing settings and plugin options, with a preview before sending to the display
- Settings changes without a restart
- Installation with one command, using Docker (a tool that runs a program together with everything it needs, separate from the rest of the system)
- Generated documentation with example images for every plugin
Progress is tracked in milestones.
PaperPi needs Python 3.13, the version in Raspberry Pi OS "trixie".
It uses uv, a tool that installs the right Python version and all the packages PaperPi needs into a separate folder (.venv), and ruff, a tool that checks code style.
uv sync # install everything
uv run pytest # run the tests (tests that need a real display are skipped)
uv run pytest -m hardware # run only the tests that need a real display (on the Pi)
uv run ruff check . # check code style
uv run ruff format . # fix code formattingSee CLAUDE.md for how work is organized.