Pulse/docs/SIMPLIFIED-APPROACH.md
Pulse Monitor 0824e22338 Fix all TypeScript 'any' types and ensure strict typing
- Replace all 'any' types with proper TypeScript types throughout the codebase
- Fix Record<string, any> to use specific types (AlertThresholds, unknown)
- Update logger methods to use 'unknown' instead of 'any' for parameters
- Fix type assertions to use proper types instead of 'as any'
- Update generic type defaults from 'any' to 'unknown'
- Fix WebSocket message types to use 'unknown' for optional data
- Move global Toast declaration to top level to fix TypeScript errors
- Comment out legacy PBS backup code that referenced non-existent fields
- Ensure all code follows TypeScript standards as documented in CLAUDE.md

All TypeScript compilation errors have been resolved and the codebase now
adheres to strict typing standards with no 'any' types remaining.
2025-07-30 14:08:06 +00:00

1.5 KiB

Pulse Configuration Approach (Simplified)

Following the successful pattern of apps like Radarr, Sonarr, and Jellyfin, Pulse now uses a simplified configuration approach:

How It Works

  1. Everything Through the UI: All configuration is done through the web interface
  2. Auto-Secured Config: The config file is automatically secured with 600 permissions
  3. No Manual Editing: Users never need to touch config files or environment variables
  4. Zero Setup: Works out of the box with secure defaults

Key Benefits

  • User Friendly: Just like Radarr/Sonarr - configure everything in the UI
  • More Secure: Config file is automatically secured, no risk of misconfigured .env files
  • Simpler: No need to understand environment variables or file permissions
  • Reliable: Single source of truth, managed by the application

For Advanced Users

While not recommended, advanced users can still:

  • Use environment variables: ${VAR_NAME} in config values
  • Use file references: file:///path/to/secret in config values
  • Edit the config file directly (changes are picked up on restart)

But these features are hidden by default - the UI is the primary way to configure Pulse.

Implementation

  • Config file at /etc/pulse/pulse.yml is automatically secured (mode 0600)
  • All settings can be modified through the Settings page
  • Credentials are stored in the config file, protected by file permissions
  • No external dependencies or complex setup required