Releases: Bandonker/desktop-audio-proxy
Releases · Bandonker/desktop-audio-proxy
Release list
Release v1.1.7: TLC UPDATE
Feature and Documentation Enhancements:
Added full video streaming support (MP4, WebM, M3U8/HLS) with new examples, a React video player component, and expanded documentation in the README.md and CHANGELOG.md. This includes API usage for video, adaptive streaming, and seeking.
CI/CD Workflow Improvements:
Hardened GitHub Actions workflows by adding explicit permissions, timeouts, stricter matrix and linting steps, and improved artifact handling in .github/workflows/ci.yml, .github/workflows/pr-validation.yml, and .github/workflows/publish.yml.
Security Posture and Hardening:
Overhauled SECURITY.md to clarify current implemented controls (request validation, stream lifecycle cleanup, CORS, logging/telemetry), and explicitly list deferred hardening items (authentication, allowlists, rate limiting, SSRF controls). Added best practice code samples for URL validation and restrictive deployment.
Changelog and Metadata:
Updated CHANGELOG.md for version 1.1.7 to reflect new video features, documentation improvements, and package metadata changes.
Other Improvements:
Enhanced package description, keywords, and .gitignore to better reflect new video capabilities and streamline development.
Add legacy React example compatibility redirect (/examples/react-video-player.tsx -> /examples/react-example.tsx) across demo servers and smoke validation.
Remove shim-based React demo wiring and use the package React hook export directly.
Improve browser/client bundling safety for Node-only server imports and tighten export verification coverage.
Expand demo tooling with dedicated build/serve/smoke scripts and refresh demo entry assets.
Harden proxy behavior and tests around URL validation, request handling, timeout/redirect controls, and cleanup paths.
Reduce noisy test console output while preserving assertions and overall coverage.
Refresh workflow and packaging setup, including dependency/lockfile updates and publish-ready script alignment.
Update README and related docs for current API, migration notes, security defaults, demo route map, release checklist, and contributor/support guidance.
Keep release artifacts and examples aligned with the current project structure and compatibility expectations.
This pull request introduces comprehensive improvements to CI/CD workflows, security documentation, and demo code, along with new features and documentation for video streaming support. The changes focus on strengthening build/test pipelines, clarifying security posture and best practices, and improving demo safety and usability.
CI/CD Workflow Enhancements
Added explicit permissions to all workflow files (ci.yml, pr-validation.yml, publish.yml) for improved security; set contents: read for CI/PR validation and contents: write for publishing.
Introduced linting and export validation steps, increased timeouts, and improved artifact handling in CI, PR validation, and publish workflows. Also switched test runs to use --runInBand for reliability.
Enhanced package export validation to check for React and Vue builds/types, and added runtime subpath export verification scripts in PR validation.
Security Documentation and Best Practices
Overhauled SECURITY.md to clarify which protections are implemented versus deferred, and provided best practice code snippets for URL whitelisting, restrictive proxy configuration, and scoped auto-start usage.
Demo Code Improvements
Renamed proxy configuration option from proxyConfig to proxyServerConfig for consistency in both CLI and browser demos.
Added HTML escaping and error message normalization to demo UI rendering, preventing potential injection and ensuring robust error display.
Feature and Documentation Additions
Added comprehensive video streaming support (MP4, WebM, M3U8/HLS), React video player component, and expanded documentation in CHANGELOG.md and README.
v1.1.6: TypeScript Compilation Fix
Fixed
- Added 'proxy_check' to TelemetryEvent type union (fixes TypeScript compilation errors)
What's Changed
This patch release fixes TypeScript compilation errors that were preventing the library from building properly. The telemetry system now correctly includes the 'proxy_check' event type.
Installation
npm install desktop-audio-proxy@latestLinks
v1.1.5: Security Documentation + Full Tauri v2 Support
v1.1.5 Changes
Added
- SECURITY.md with comprehensive security best practices and vulnerability reporting
- TAURI_MIGRATION.md with Tauri v1 to v2 upgrade guide
- Documentation files now included in npm package
Changed
- Updated README with references to security and migration documentation
- Added npm run demo:serve command to documentation
v1.1.4 Features (included in this release)
Added
- Tauri v2 Support - Automatic version detection, works with both v1 and v2
- Auto-Start Proxy - Automatically spin up proxy server when needed (Node.js only)
- Telemetry System - Optional performance monitoring and event tracking
- Debug Logger - Multi-level logging with category filtering for troubleshooting
- Interactive Telemetry Dashboard - Real-time performance monitoring demo
- JSDoc Comments - Better IDE autocomplete support
- Performance Benchmark Suite - Measure and optimize library performance
Changed
- Improved error messages with actionable solutions
- Added
sideEffects: falsefor better tree-shaking - Enhanced TypeScript strict mode compliance
Fixed
- Reserved keyword usage (renamed
debuggertodebug) - Missing return statements in async route handlers
- TypeScript compilation warnings
- Tauri v2 API detection issues (fixes "Right side of assignment cannot be destructured" error)
Installation
npm install desktop-audio-proxy@latestFor Tauri v2 Users
Add this to your tauri.conf.json:
{
"app": {
"withGlobalTauri": true
}
}Links
v1.1.3: Streamlined Demo & Enhanced Documentation
What's New in v1.1.3
Enhanced Demo Experience
- Streamlined CLI Demo: Improved terminal interface with cleaner command structure
- Updated Documentation: Comprehensive guides updated with latest examples and best practices
- Better Getting Started: Clearer setup instructions for new users
Framework Integration
- React Hooks: Complete integration with
useAudioProxy,useAudioCapabilities,useProxyStatus,useAudioMetadata - Vue 3 Composables: Reactive audio processing with Vue's Composition API
- TypeScript Support: Full type safety across all entry points
Core Features
- CORS Bypass - Stream external audio URLs without restrictions
- Multi-Environment - Automatic Tauri/Electron/Web detection
- Smart Fallbacks - Graceful degradation when proxy unavailable
- Range Requests - Full seeking support for audio streaming
- React/Vue Ready - Framework-specific hooks and composables
Quick Start
npm install desktop-audio-proxy
import { createAudioClient } from 'desktop-audio-proxy';
const client = createAudioClient();
const playableUrl = await client.getPlayableUrl('https://example.com/audio.mp3');
audioElement.src = playableUrl;Package Exports
- Main: Full functionality (client + server)
- Browser: Client-only, smaller bundles
- Server: Node.js proxy server only
- React: Hooks and providers
- Vue: Composables and plugins
Try the Demo
npm run demo:cli # Terminal demo with CORS testing
npm run demo # Web demo with live examplesPerfect for podcast players, radio streaming apps, and any Tauri/Electron application that needs to access external audio content.