Move all Python source under src/ following modern packaging conventions.
Server, viewer, host-agent, and shared common code now live as four
top-level packages with clear excision boundaries — anthias_viewer can
be removed wholesale when the rewrite-out-of-Python lands without
touching the server.
src/anthias_common/ shared: errors, utils, internal_auth, device_helper
src/anthias_server/ Django app, REST API, Celery tasks, manage.py
lib/ server-only: auth, backup_helper, diagnostics, github, telemetry
src/anthias_viewer/ player runtime (was viewer/)
src/anthias_host_agent/ systemd-driven host shim (was host_agent.py)
tools/raspberry_pi_imager/ moved from repo root
tests/conftest.py moved from repo root
pyproject.toml gets [build-system], setuptools src/ discovery, and an
anthias-manage console script. Django AppConfigs keep label='anthias_app'
and label='api' so existing migration dependency tuples don't move.
BASE_DIR computed from parents[3] to keep templates/static at repo root.
mypy_path set to ["src", "stubs"] with explicit_package_bases.
Dockerfile templates set PYTHONPATH=/usr/src/app/src; bin/start_*.sh
and CI workflows use python -m anthias_server.manage / python -m
anthias_viewer instead of bare ./manage.py and python -m viewer.
Ansible host-agent unit invokes python -m anthias_host_agent.
Verified end-to-end in the docker test container:
- 430 unit tests pass (matches baseline)
- 7 integration tests pass, 5 skipped (matches baseline)
- ruff, mypy clean
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Anthias · Open Source Digital Signage Solution for Raspberry Pi and PC
✨ About Anthias
Anthias is a digital signage platform for Raspberry Pi devices and PCs. Formerly known as Screenly OSE, it was rebranded to clear up the confusion between Screenly (the paid version) and Anthias. More details can be found in this blog post.
Want to help Anthias thrive? Support us using GitHub Sponsor.
🚀 Getting Started
See this page for options on how to install Anthias.
✅ Compatibility
balenaOS
Note
See this page for instructions on how to install Anthias on balenaOS. You can either use the images from balenaHub or download the images from the releases.
Raspberry Pi OS
- Raspberry Pi 5 Model B - 64-bit Trixie, 64-bit Bookworm
- Raspberry Pi 4 Model B - 64-bit Trixie, 64-bit Bookworm
- Raspberry Pi 3 Model B+ - 64-bit Trixie, 64-bit Bookworm
- Raspberry Pi 3 Model B - 64-bit Trixie, 64-bit Bookworm
- Raspberry Pi 2 Model B - 32-bit Trixie, 32-bit Bookworm
- PC (x86) - 64-bit Trixie, 64-bit Bookworm
- Any 64-bit PC works (Intel NUCs, mini-PCs, old laptops).
- See the PC installation guide for the Debian setup steps, then run the standard installation script.
Note
We're still fixing the Raspberry Pi OS installer so that it'll work with Raspberry Pi Zero and Raspberry Pi 1. Should you encounter any issues, please file an issue either in this repository or in the forums.
⭐ Star History
🐞 Issues and Bugs
Note
We are still in the process of knocking out some bugs. You can track the known issues here. You can also check the discussions in the Anthias forums.
⚡ Quick Links
- Forum
- Website (hosted on GitHub and the source is available here)
- General documentation
- Developer documentation
- Migrating assets from Anthias to Screenly
- WebView