dmpop/digikampanion
PHP-based web UI for digiKam
- PHP 81.4%
- CSS 14.7%
- Shell 3.9%
digiKampanion
A lightweight PHP web interface for browsing photos managed by digiKam. Built to work with digiKam's SQLite database without relying on its thumbnail database.
Features
- Browse albums and photos from digiKam's database
- On-the-fly thumbnail generation (cached for performance)
- EXIF statistics with CSS bar charts and top 5 rankings
- RAW file filtering (NEF, DNG, ORF files excluded)
- Full-size image fallback for unsupported formats
- Lightbox viewer with keyboard navigation
- EXIF metadata display
- Geotagged photo map display
- Star rating display
- Download photo and RAW files
- Responsive grid layout
- Pagination for large albums
- Optional password protection
- Multi-language support (localization system)
- Random shuffle sorting for photo discovery
Quick Start
- Install PHP on the machine that has your digiKam library
- Install the php-common php-sqlite3 php-imagick extensions.
- Grab the latest version of digiKampanion, and extract the downloaded archive (or use
https://codeberg.org/dmpop/digikampanion.git) - In the terminal, switch to the resulting digikampanion directory, and run
php -S 0.0.0.0:8000 - Point the browser to http://127.0.0.1:8000 and configure the required settings
For more detailed information about deploying and using digiKampanion, refer to the official digiKampanion User Guide
File Structure
digikampanion/
├── index.php # Main album/photo browser
├── view.php # Lightbox viewer
├── stats.php # EXIF statistics and charts
├── image.php # Full-size image server
├── thumbnail.php # Thumbnail generator
├── download.php # Download photo/RAW files
├── config.php # Configuration and i18n initialization
├── settings.php # Settings page
├── login.php # Login page (when password protection enabled)
├── collections.txt # Root paths configuration
├── style.css # Styles
├── inc/
│ └── i18n.class.php # Internationalization class
├── lang/
│ └── en.ini # English translations
└── cache/
├── languages/ # Compiled language cache
└── thumbnails/ # Thumbnail cache
Notes
- RAW files (NEF, DNG, ORF) are automatically filtered out
- Thumbnails are generated on first request and cached
License
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
Support
For questions or issues, please check the existing issues or create a new one in the project repository.
Acknowledgments
Author
Disclosure
The idea is mine. Most of the coding has been done using OpenCode.