Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 880891c6bd | |||
| 30e018d583 | |||
| eb858a88cc |
@@ -2,7 +2,7 @@
|
||||
|
||||

|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
A modern, self-hosted PHP screenshot and media management dashboard with powerful organization features, sharing capabilities, and a clean web interface.
|
||||
@@ -10,7 +10,7 @@ A modern, self-hosted PHP screenshot and media management dashboard with powerfu
|
||||
The project consists of three main components:
|
||||
|
||||
1. **Photon Dashboard** (`photon`): Web interface for managing screenshots.
|
||||
2. **Photon Worker** (`worker`): Background processing and file scanning.
|
||||
2. **Photon Worker** (`worker`): Background processes (OCR and thumbnail generation).
|
||||
3. **MariaDB Database** (`db`): Stores metadata and application data.
|
||||
|
||||
Keep up-to-date on new releases by following the [changelog](./changelog.md).
|
||||
@@ -59,29 +59,6 @@ An external authentication proxy is recommended to protect your dashboard from u
|
||||
|
||||
## Configuration
|
||||
|
||||
### Environment Variables
|
||||
|
||||
Copy the `.env` file and customize these key settings:
|
||||
|
||||
#### Dashboard Settings
|
||||
- `PHOTON_PORT`: Web interface port (default: 8090)
|
||||
- `USER_EMAIL`: Admin email address
|
||||
- `DATA_PATH`: Path to your screenshots folder
|
||||
|
||||
#### Worker Settings
|
||||
- `SCAN_RATE`: File scanning interval in seconds (default: 10)
|
||||
|
||||
#### Database Settings
|
||||
- `MYSQL_DATABASE`: Database name used by Photon (defaults to photon).
|
||||
- `MYSQL_USER`: Database user used by Photon.
|
||||
- `MYSQL_PASSWORD`: Database password used by Photon user.
|
||||
- `MYSQL_ROOT_PASSWORD`: Database root password.
|
||||
|
||||
#### Domain Options
|
||||
- `PHOTON_DOMAIN`: Domain used for dashboard.
|
||||
- `PHOTON_SHARE_DOMAIN`: Optional subdomain for sharing links.
|
||||
- `COOKIE_DOMAIN`: Required when adding a subdomain for sharing.
|
||||
|
||||
### Deployment Options
|
||||
|
||||
#### Standard Deployment
|
||||
@@ -91,7 +68,7 @@ docker-compose -f examples/compose-default.yml up -d
|
||||
```
|
||||
|
||||
#### Traefik – Custom Domains
|
||||
Use `examples/compose-traefik.yml` for reverse proxy setups with custom domains.
|
||||
Use `examples/compose-traefik.yml` for reverse proxy setups, authentication and custom domains.
|
||||
|
||||
## Project Structure
|
||||
|
||||
@@ -100,7 +77,7 @@ photon-dashboard/
|
||||
├── examples/
|
||||
│ ├── compose-default.yml # Default example for basic usage.
|
||||
│ ├── compose-traefik.yml # Traefik example for custom domain routing.
|
||||
│ └── .env # Environment configuration
|
||||
│ └── .env.example # Environment configuration
|
||||
│
|
||||
└── changelog.md # Version history
|
||||
```
|
||||
@@ -108,8 +85,8 @@ photon-dashboard/
|
||||
## Updates
|
||||
|
||||
Container images are available at:
|
||||
- Dashboard: `git.jrdn.dev/jordanwalster/photon-dashboard:latest`
|
||||
- Worker: `git.jrdn.dev/jordanwalster/photon-worker:latest`
|
||||
- Dashboard: `git.jrdn.dev/photon/photon-dashboard:latest`
|
||||
- Worker: `git.jrdn.dev/photon/photon-worker:latest`
|
||||
|
||||
View version history: [Container Registry](https://git.jrdn.dev/jordanwalster/-/packages/container/photon-dashboard/versions)
|
||||
|
||||
|
||||
@@ -2,6 +2,58 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## [v1.0.3] - 2026-05-02
|
||||
|
||||
### Added
|
||||
- Private Sidebar button for easier viewing of images set to private.
|
||||
- Make private button to multi-select actions.
|
||||
- Download button to multi-select actions.
|
||||
- Hold shift to select.
|
||||
- Select all (on page) button.
|
||||
- New version available message in footer.
|
||||
- Generate thumbnail endpoint.
|
||||
- Feedback button to footer.
|
||||
|
||||
### Changed
|
||||
- Updated icon library to latest.
|
||||
- Upgraded to PHP 8.5.
|
||||
- Icon for active tags now shows a tag (due to icon library updates).
|
||||
- Moved changelog link into version number.
|
||||
|
||||
### Fixed
|
||||
- Bug where images with capitalised extensions could not be trashed by using "Empty trash" button.
|
||||
|
||||
## [v1.0.2] - 2026-05-01
|
||||
|
||||
### Added
|
||||
- Counter when force generating thumbnails.
|
||||
- Context menu for folders in the sidebar (rename and delete actions).
|
||||
- Confirm permanently delete popups.
|
||||
- Restore database backup tool to recover OCR and tags.
|
||||
|
||||
### Fixed
|
||||
- Database export includes numeric array indices as column names, corrupting the backup.
|
||||
- OCR results not showing within folder context.
|
||||
- OCR results not showing for images in folders from within a tag context.
|
||||
|
||||
## [v1.0.1] - 2026-04-30
|
||||
|
||||
### Added
|
||||
- Clear search function on page type switch.
|
||||
- Remove tags and Move Folder options to Actions dropdown when searching.
|
||||
|
||||
### Changed
|
||||
- Image caching now has a time limit and processing is limited to 50 items at a time to prevent resource exhaustion.
|
||||
- Colours in actions dropdown more muted.
|
||||
|
||||
### Fixed
|
||||
- Missing protocol on copy to clipboard.
|
||||
- Space handling on next page when using folders.
|
||||
- Space handling when using search in folders.
|
||||
- Database doesn't update structure when attempting to make an image private.
|
||||
- Attempted database update when images don't yet exist in the table.
|
||||
- Restore & Permanently delete selected buttons not working.
|
||||
|
||||
## [v1.0.0] - 2026-04-30
|
||||
|
||||
> [!CAUTION]
|
||||
|
||||
@@ -10,6 +10,10 @@ PHOTON_DOMAIN=photon.local
|
||||
# PHOTON_SHARE_DOMAIN=share.photon.local
|
||||
# COOKIE_DOMAIN=.photon.local
|
||||
|
||||
### Basic Auth Credentials (for Traefik) Use htpasswd to generate the password hash.
|
||||
BASIC_AUTH_USER=admin
|
||||
BASIC_AUTH_PASSWORD='$apr1$LbKLWjeg$i69pFbEbwQ61CtsjWGq/D0'
|
||||
|
||||
### Photon Worker Environment Variables
|
||||
SCAN_RATE=10
|
||||
|
||||
|
||||
@@ -18,6 +18,9 @@ services:
|
||||
- "traefik.http.routers.photon.rule=Host(`${PHOTON_DOMAIN}`)"
|
||||
- "traefik.http.routers.photon.service=photon"
|
||||
- "traefik.http.services.photon.loadbalancer.server.port=80"
|
||||
# Basic auth for dashboard (Replace this with your own credentials).
|
||||
- "traefik.http.middlewares.photon-basic-auth.basicauth.users=${BASIC_AUTH_USER}:${BASIC_AUTH_PASSWORD}"
|
||||
- "traefik.http.routers.photon.middlewares=photon-basic-auth"
|
||||
|
||||
# Custom domain for share links
|
||||
- "traefik.http.routers.photon-share.rule=Host(`${PHOTON_SHARE_DOMAIN}`)"
|
||||
|
||||
Reference in New Issue
Block a user