2025 Highlights
Major Platform Modernisation ⭐
The defining theme of 2025 was a complete technical modernisation of the platform:
- Template Migration: Slim → ERB (500+ files)
- JavaScript Migration: CoffeeScript → ES2024 (30+ new Stimulus controllers)
- Asset Pipeline: Webpacker → esbuild + Propshaft
- Stylesheet Migration: Sass → SCSS
Live View Player Rewrite ⭐
Complete video/image streaming architecture overhaul:
- Four HLS latency profiles (Ultra-Low to Slow Internet)
- Automatic fallback to image mode on poor connections
- Touch support for pan/zoom on mobile
- Auto-retry system with exponential backoff
- iOS/Safari reliability improvements
- Seamless local streaming with automatic upgrade when on same network
Mobile & Tablet Experience ⭐
Major UI overhaul for mobile and tablet devices:
- Dedicated mobile stylesheets
- Touch-friendly recordings playback
- Orientation-aware layout switching
- Responsive controls throughout
Export System
New bulk download and export capabilities:
- Bulk event downloads with email delivery
- Camera snapshots bulk download
- Export management with progress tracking
- Expiration and cleanup
TetherBox Health Monitoring ⭐
Comprehensive diagnostics with dramatically improved performance:
- Health page overhaul: Server-side pagination (loads in seconds, not minutes)
- S.M.A.R.T drive health integration with intelligent error filtering
- Slow drive overload detection (>50% utilisation on ≤5400 RPM drives)
- CPU architecture visibility
- Network interface diagnostics overhaul: Smart bad cable detection, half-duplex warnings, carrier error tracking with significant reduction in false positive warnings
- Filesystem corruption detection
- Ejected drives detection
- Automatic drive power management: Disables aggressive power saving (APM, ALPM, APST) for 24/7 workloads
TetherBox Reliability ⭐
Critical reliability improvements for unattended operation:
- File descriptor leak resolution: Eliminated EMFILE errors enabling indefinite uptime—one of most significant stability improvements
- Authentication lockout prevention: 12-minute cooldown prevents camera lockouts from failed auth attempts
- ANPR detection recovery: Automatic re-initialisation when cameras reconnect after network interruptions
- VMD event filtering: Intelligent noisy camera filtering achieving 60-80% false alert reduction
- ONVIF PTZ for DVR channels: Full PTZ support for multi-camera recording devices
Page Performance ⭐
~2x faster page loads across key pages:
- Events, TetherBoxes, Cameras and other key pages load around twice as fast
- Drastically reduced database queries
- Lazy-loaded filters with temporary placeholders
- Page sections load independently for faster time-to-interactive
Brand Management
White-label branding support for partners:
- Visual identity (colours, logos)
- Custom support URLs
- Per-timeline brand assignment
- Brand-consistent emails
Security Enhancements
- TOTP two-factor authentication (replacing Authy)
- IP address restrictions per user
Other Notable Features
- Text-based events for system notifications without video
- Inline editing system across all entities
- Real-time updates via ActionCable with smooth row deletion
- Release notes browser in Help section
- Wireless device management
- Matrix RS232 controller support
- Partner activity tracking
- Raspberry Pi OS (Debian 13) support
- Expanded Hikvision ANPR camera model support
- Selective ONVIF analytics event filtering
- Enhanced Modbus environmental sensor support
Statistics
Platform
| Quarter | Commits | Lines Added | Lines Removed | Net Lines |
|---|---|---|---|---|
| Q1 | 158 | 3,054 | 598 | +2,456 |
| Q2 | 139 | 35,768 | 5,904 | +29,864 |
| Q3 | 148 | 52,217 | 35,551 | +16,666 |
| Q4 | 188 | 25,573 | 39,595 | -14,022 |
| Total | 633 | 116,612 | 81,648 | +34,964 |
Year-end codebase: 208,542 lines (Ruby: 86,416, Views: 50,434, JS: 31,197)
TetherBox
| Quarter | Commits | Net Lines |
|---|---|---|
| Q1 | 87 | +2,405 |
| Q2 | 27 | +1,495 |
| Q3 | 24 | +2,238 |
| Q4 | 34 | +3,140 |
| Total | 172 | +9,278 |