Releases: pseudosavant/player.html
2.33.0
2.32.0
Changed
- Fixed the Open URL modal action buttons so their text renders white.
- Made the playlist modal text buttons render bold for clearer emphasis.
2.31.0
This release focuses on UI polish and layout consistency, especially for folder/file tiles, modal readability, and title overlays.
Highlights
- Tile columns now stay consistent based on viewport width when navigating between sparse and dense folders
- Improved modal readability with stronger button text styling and better row alignment
- Refined tile title overlays, folder icons, and parent folder label behavior
- Added subtle tile shadows to improve separation, especially in light mode
Tile Title Overlay
- Updated tile title overlay background to use a themed semi-transparent
hsla()color - Tuned tile title blur for better readability while preserving background context
- Improved overall tile title contrast in both light and dark themes
Modals and Readability
- Improved vertical alignment in settings, subtitle, and file info modal rows
- Fixed file info screenshot action row alignment
- Updated non-icon modal buttons to use:
- bold text
- white foreground
- subtle black text shadow
- Improved
.media-titleweight to500for better readability over media
2.30.0
Highlights
- Added optional hosted
manifest.jsonsupport, with inline generated manifest fallback - Added
Export manifest.jsonto the Settings modal - Improved file info loading so metadata appears even when a restored video is paused before playback starts
- Refined tile sizing so wide sparse rows stay under control while narrow layouts still fill available width
PWA and Configuration
player.htmlnow prefers a hostedmanifest.jsonnext to the page when present- If no hosted
manifest.jsonexists, it continues using the generated inline manifest automatically - Added manifest export support from Settings to help hosted deployments customize app name, icons, colors,
start_url, andscope - Kept
player.html.jsonfocused on player behavior and defaults such asstartLocation
Documentation
- Updated the README to document
player.html.jsonandmanifest.jsonas a common deployment pair - Added guidance on when to use player config versus hosted PWA manifest metadata
- Added starter
manifest.jsondocumentation and export workflow details
2.29.0
This release refines modal sizing and improves media title presentation.
Highlights
- Modal panels now size against the viewport with
max-height: 100vh - Media title shadow behavior is smoother and only appears when the title is visible or focused
Changes
- Changed
.modalfromheight: 100%tomax-height: 100vh - Changed
.modal-background-overlayfromheight: 100%toheight: 100vh - Added transparent base
text-shadowand transitioned bothcolorandtext-shadowfor smoother title fade-in
2.28.0
This release removes built-in cloud picker credentials from the default config and makes cloud source buttons appear only when valid credentials are explicitly provided.
Highlights
- OneDrive and Google Drive credentials are now blank by default in the built-in config
- Cloud picker buttons are hidden unless the required credentials are actually populated
- Picker availability checks now safely handle missing config objects and empty strings
Changes
- Set default
app.options.cloud.onedrive.clientIdto an empty string - Set default
app.options.cloud.gdrive.developerKey,clientId, andappIdto empty strings - Updated OneDrive button gating to require a non-empty
clientId - Updated Google Drive button gating to require non-empty
developerKey,clientId, andappId - Hardened cloud config checks so missing objects do not cause the picker setup to fail
Notes
To enable cloud pickers, supply your own credentials in app.options.cloud and serve player.html over HTTPS.
2.27.0
This release improves responsive layout behavior across the player UI, fixes thumbnail animation issues, and tightens several control and metadata interactions.
Highlights
- Improved responsive control layout on narrow screens
- Reworked media tile sizing so folder/file tiles scale smoothly from wide layouts down to single-column mobile layouts
- Added better wrapping for long metadata values in modals
- Fixed thumbnail hover behavior and restored animated thumbnail generation
- Fixed previous/next playlist button visibility so they only show when the playlist has multiple items
Changes
- Moved cloud source buttons after playlist, local media, and remote URL buttons
- Added wrapping for primary buttons on very narrow iPhone-sized layouts
Fixes
- Fixed disappearing/flashing tile thumbnails after hover
- Fixed animated thumbnails only generating the first frame when animation settings were unset
- Fixed playlist previous/next visibility by correcting CSS selector specificity
2.26.0
Added
- Shareable search state in the URL hash, so refreshing or reopening a link restores the active search after indexing completes
Changed
- Search scope now tracks a separate library
rootand currentlocation - Refreshing while browsing a subfolder now keeps search indexing anchored to the original library root
- Navigating above the current root promotes that folder to the new root automatically
- Same-origin exported
startLocationvalues are now written as root-relative paths for better portability across hosts, domains, and ports - Modals now render within the full player container instead of only the media area
- Modal overlay styling is stronger and clearer, with blur, offset border treatment, and themed scrollbars
2.25.0
player.html v2.25.0
Added
- Client-side media search for directory-based libraries
- Search indexing cached in
sessionStoragefor the current browser session - Search depth setting in Settings and
player.html.json
Notes
- Search indexes audio and video files supported by the current browser
- Extension searches like
mp3,.mp3,mkv, and.mkvare supported - Exported
player.html.jsonnow includessettings.search-depth
player.html v1.0.0
This is the first 1.0 release of player.html. All functionality is available on all platforms except client-side thumbnailing (not available on iOS, probably not possible).
Supported features
- Only 1 file with zero external dependencies
SVG imagesare inlined as data URIs- May be installed as a PWA (Progressive Web App) app. Dynamically generated inline data URI manifest file.
- Playback of MP4, M4V, MKV, WEBM, and OGG files using the browser video engine
- Sharable URL that will load
player.htmlin the same folder location, and video position - Jump forward/backward 15 seconds
- Video thumbnail generation, with concurrency configuration (default 1)
- Thumbnail caching using localStorage
- Social media metadata (og:*, twitter:*)
Supported Web Servers
- NGINX (
autoindexon) - Apache (
mod_autoindex) - IIS (enable
Directory Browsing)