# spis

> Self-hosted image/video gallery server, lightweight and database-free. Runs on Raspberry Pi, offers PWA with endless scroll, favorites, slideshows, custom commands.

- **Category:** Photo Management
- **Licence:** GPL-3.0
- **Latest version:** v0.15.2
- **Open source:** oss
- **Languages:** Rust, HTML
- **Platforms:** Docker, Docker Compose, Systemd
- **Tags:** Videos, Raspberry Pi, Lightweight, No Database, Pwa, Gallery, Progressive Web App, Rust, Self Hosted, Photo Management, Image Gallery, Images, Video gallery

## Description

spis (Simple Private Image Server) is a lightweight, fast media gallery server for self-hosting photos and videos. It serves media through a web UI with endless scrolling, favorites, slideshows, and filtering by year, month, or subdirectory. The server requires no database — it scans a media directory and stores thumbnails and metadata in a local data directory. A separate web server (like nginx) handles media streaming and caching, while spis provides the API and UI. It runs as a Docker container or a standalone binary with systemd, and works well on low-power devices like a Raspberry Pi CM4 hosting 40,000 images. The UI is a progressive web app installable on mobile and desktop. Custom commands let users run scripts on selected files from the interface. Configuration uses TOML, CLI flags, or environment variables. Video support requires ffmpeg/ffprobe. The project is licensed under GPL-3.0.

## Links

- [Homepage](https://github.com/gbbirkisson/spis)
- [Docker](ghcr.io/gbbirkisson/spis)
- [Demo](https://spis.fly.dev)
- [GitHub Repository](https://github.com/gbbirkisson/spis)

---
Source: https://selfhost.directory/project/spis