Releases: adurrr/wavecast
Releases · adurrr/wavecast
Release list
v1.3.0
Added
- Linux Matter program to example site (Linux, open source, desktop focus) with 2 episodes
- S1E3 episodes for all four existing programs (Code & Circuit, Security Brief, Open Source Spotlight, Deploy Friday)
- Wednesday schedule slot for Linux Matter, refreshed upcoming episodes
Changed
- Example site programs grid expanded to 5 cards, episode counts bumped to 3
- Demo GIF replaced: 7 frames showcasing persistent player across page navigation, inline player in action, and light/dark mode (142 KB)
- Updated demo alt text in README to describe expanded content
Fixed
- Broken audio sources across 8 episodes: no-CORS SoundHelix URLs and 404 fabricated URLs replaced with verified Fireside.fm audio (CORS-enabled, HTTP 200)
- YAML colon-parsing errors in show_notes lists across all new episode front matter
- Future-dated episodes now render without
--buildFutureflag
Previous (v1.2.x backport)
- Language tags added to all 40+ fenced code blocks across 7 docs pages (EN and ES), enabling Chroma syntax highlighting
- Code blocks styled with 0.9rem padding and 3px left accent border (Hextra/Docusaurus pattern)
- Class-based highlighting (
noClasses = false) with bundledsyntax.cssfor light/dark theme-compatible token colors - Light mode readability: Monokai string colors overridden from yellow to dark gold, operator highlights reset to inherit
- Copy-to-clipboard button always visible (opacity 0.6) with Turbolinks/Turbo event listeners for SPA survival
- Fixed missing closing brace in
addCopyButtons()that silently broke all copy functionality - Docs page weights changed to descending order, listing reversed to reading order (Installation first)
- Duplicate TOC tables removed from docs index pages
v1.2.0 — Bidirectional Sync & Updated Demo
Added
- Bidirectional real-time sync of mute, volume, playback rate, and chapter seek between inline player and footer via new
podcast-state-changeevent (#25, #28) podcast-seekevent dispatched from skip (rewind/forward) and chapter-click buttons so footer tracks all position changes- Updated demo GIF showing new sync features (8 frames, SVG icons, volume/speed sync)
Changed
- Updated demo capture script (
scripts/capture-demo.mjs) for new site structure, port 1311, and/wavecast/subpath - Updated GIF generation script (
scripts/make-gif.py) with new captions matching updated demo flow
Fixed
- Speed change on inline player no longer accidentally mutes footer audio (volume/mute defaults now read from UI rather than silenced
<audio>when footer is active) - Double-audio prevention: inline
_setVolume,_toggleMute,_cycleRate, and keyboard volume handlers now skip modifying the inline<audio>when a footer is producing audible output - Event echo loop prevented with
_suppressSyncguard flag on both inline player and footer
Full Changelog: v1.1.0...v1.2.0
v1.1.0
v1.0.0 — Wavecast
Initial stable release of Wavecast — a persistent podcast/radio player Web Component for Hugo.
Installation
As a Hugo theme:
git clone git@github.com:adurrr/wavecast.git themes/wavecast
# then add: theme = "wavecast" to hugo.toml
As a Hugo module:
hugo mod get github.com/adurrr/wavecast
Features
- Inline Web Component with Shadow DOM
- Sticky footer player with radio-t style controls
- Bidirectional sync between all players
- Single-stream playback (playing one stops others)
- Navigation persistence via sessionStorage + Turbolinks/Turbo/htmx
- Source adapters: local files, AzuraCast, iVoox
- Chapters with timestamp navigation
- Poster and Markdown description support
- Full CSS theming with 12 custom properties and ::part() selectors
- Keyboard shortcuts, Media Session API, ARIA accessibility
- 80 JS unit tests + 21 Playwright E2E tests
Documentation
Full README at https://github.com/adurrr/wavecast#readme
Live demo at https://adurrr.github.io/wavecast/