Releases: auskento/YAHLP
Release list
v2.2.0
📦 YAHLP 2.2.0 Release Complete
✅ Features Delivered
Dynamic service loading from JSON5 configuration files
GraphQL metrics support with value extraction and transformations
Apache vhost integration with automatic dashboard discovery
Dashboard metrics API endpoints
API key authentication with multiple header formats
Auto-enable dashboard for services with metrics
30-second metric caching for performance
Users can now:
Add custom services via vhost files with no code changes
Configure dashboard metrics via JSON5 files
Display real-time data from GraphQL services
Support any API with proper authentication
Hot-reload configuration without restart
v2.1.0
v2.1.0 — Modular Services Framework
Core Features Implemented
Custom Services via Configuration Files — Add services via /config/additional-conf/XYZ.conf without Docker rebuild
Per-Service Settings — Configure #APPNAME and #DASHBOARD_WINDOW directly in .conf comments
Dynamic Service Discovery — Automatic scanning and loading of custom services at startup. vhost domains or service based conf
Icon Management — PNG/SVG icons synced to /etc/yahlp/service_icons/ from config folder
CUSTOM_SERVICES.md (8.5 KB) — Complete guide for adding custom services, configuration file format, icon setup, virtual hosts, troubleshooting
Files Modified/Added
docker-entrypoint.sh — Service discovery, example config copying, symlink creation
generate-html-menu.sh — Per-service config extraction, custom service menu generation
generate-config.sh — VirtualHost and conf file inclusion
html/master.template — Icon path resolution for custom services
examples/additional-conf/ — tda.example.conf template
examples/additional-vhost/ — custom.example.conf template
Release 2.0.3
Release 2.0.2
Release 2.0.1
YAHLP 2.0.0 - Initial Release
YAHLP 2.0.0 - Initial Release
Official stable release of YAHLP - Yet Another Home Lab Portal.
Features
Core Dashboard
- Dynamic Service Discovery - Automatically detects enabled services and displays them in the dashboard
- Service Health Monitoring - Real-time status checks for all configured services with Online/Offline indicators
- Welcome Screen - Beautiful welcome page shown when no services are configured
- Multiple Layout Styles - Classic, Modern, Sleek, Minimal, Mobile, and custom layout support
- Responsive Design - Fully responsive dashboard that works on desktop, tablet, and mobile devices
- Dark/Light Theme Support - Automatic theme detection with user override toggle
Service Configuration
- 15 Built-in Quick Links - Torrents (TPB, FileList, HDBits, 1337x, YTS, LimeTorrents, Nyaa, IP Torrents) and Usenet sites (DOGnzb, DrunkenSlug, nzb.life, NZBFinder, NZBgeek, nzbplanet, Tabula Rasa)
- Service Credentials Tracking - Tooltip shows count of services needing credential configuration
- Intelligent Service Display - Only shows fully-configured services in dashboard; services with URL only show as pending
- Special Service Handling - Transmission displays when any other service is configured (no credentials required)
Supported Services
- Indexers & Downloaders: Sonarr, Radarr, Lidarr, Whisparr, Seerr, SABnzbd, NZBGet, NZBHydra, Transmission, qBittorrent, Deluge
- Media Servers: Jellyfin, Emby, Plex, Tautulli, Maintainerr
- Aggregators: Prowlarr, Jackett, Bazarr
Deployment Modes
- Public Mode - Full HTTPS with Let's Encrypt automatic certificate generation, OAuth2 (Google/Entra ID), Basic Auth
- Private Mode - LAN-only access with automatic IP detection, self-signed certificates
- Auth Methods - None (public IP restriction), Basic Auth, Google OAuth2, Microsoft Entra ID
Reverse Proxy
- Apache Mod Proxy - Full mod_proxy and mod_auth_openidc support
- Service Routing - Automatic ProxyPass/ProxyPassReverse configuration
- Header Handling - Proper authentication header propagation
- WebSocket Support - Full WebSocket proxy support for real-time services (SignalR, etc.)
- Timeout Protection - Configurable proxy timeouts to prevent hanging
Admin Features
- Environment Variable Configuration - Complete container configuration via env vars
- Docker Compose Ready - Full docker-compose.yml example included
- Configuration Validation - Health endpoint reports service configuration status
- Automatic Cert Generation - Let's Encrypt certificate auto-generation and renewal for public deployments
- Service Status API -
/healthendpoint shows enabled/configured status of all services - Performance Optimization - Efficient service discovery, dashboard caching, icon lazy loading
Bug Fixes & Improvements
Dashboard Loading
- Fixed dashboard not loading when clicking home button (v2.0.29)
- Added timeout protection to prevent service status fetching hangs (v2.0.28)
- Fixed initial page load issues with missing service data (v2.0.24, v2.0.9)
Service Configuration Display
- Fixed qBittorrent incorrectly showing as configured without API key (v2.0.31)
- Fixed Transmission showing in dashboard only when other services are configured (v2.0.27)
- Fixed Transmission counted as "needs credentials" in tooltip (v2.0.26)
- Fixed services showing without full credentials (v2.0.21, v2.0.4)
- Only writes enabled service URLs to configuration (v2.0.25)
- Proper handling of services with different credential requirements (v2.0.8)
HTTPS & Security
- Fixed SSL certificate mismatch for public deployments (v2.0.30)
- Removed conflicting catch-all HTTPS vhost for domain-based deployments
- Proper certificate chain handling in Apache configuration
- Automatic HTTPS redirect for HTTP requests
UI/UX
- Repositioned tooltip above home button to prevent cursor blocking (v2.0.21)
- Added custom tooltip div instead of title attribute (v2.0.21)
- Fixed tooltip showing count of services needing configuration (v2.0.6, v2.0.5)
- Proper "not configured" vs "needs credentials" distinction (v2.0.16)
- Fixed unconfigured service cards display logic (v2.0.4)
Configuration Generation
- Proper service configuration detection from environment variables (v2.0.27, v2.0.25)
- Fixed yahlp.json5 generation with correct URLs instead of hardcoded container names
- Proper LANDING_PAGE configuration for Sonarr/Radarr calendar views
- Fixed environment variable loading in generation scripts
Service-Specific Fixes
- Jellyfin authentication pre-fetch only if enabled (v2.0.11)
- Deluge initialization timing fix (v2.0.11)
- Transmission special handling when other services are configured (v2.0.23, v2.0.27)
- qBittorrent API key requirement correctly enforced (v2.0.31)
Known Limitations
- Requires Docker for deployment
- Let's Encrypt certificates only work with valid public domains
- OAuth2 (Google/Entra) requires public domain and HTTPS
- Some services may require credential pre-configuration before dashboard access
System Requirements
- Docker & Docker Compose
- For public deployments: Valid domain name with DNS pointing to your server
- For Let's Encrypt: Port 80 accessible for ACME challenges
- Minimum 512MB RAM, 1GB storage
Getting Started
- Clone the repository
- Copy
.env.exampleto.envand configure settings - Adjust
docker-compose.ymlfor your services - Run
docker-compose up -d - Access dashboard at your configured domain or IP
See full documentation for detailed setup instructions.
Credits
Built with Apache, Docker, and a focus on simplicity and reliability.