This update brings significant improvements to metadata management, a better search experience, and essential security patches. A huge thank you to @HolyFab for their contributions to the UI and codebase structure.
🚀 New Features
Automated Metadata & Categorization
- Smart Genres & Styles: Genres and styles are now automatically fetched and populated from external APIs (Discogs, Hardcover, and TMDB) when adding new items.
- Collection Filtering: You can now filter your library by these automated genres directly within the
/collectionpage.
Admin Metadata Management
- Refresh Metadata Button: Admins will now see a "Refresh Metadata" button on item detail pages to manually update genre and style info.
- Bulk Management: Three new sections have been added to the Admin Menu (Music, Books, Movies) allowing you to refresh metadata at scale. You can choose to:
- Refresh all items in a category.
- Only refresh items that currently have no defined genres.
Search & UI Enhancements (by @HolyFab)
- Optimized Search Workflow:
- The search text-box in all "add-item" pages is now auto-focused for faster library building.
- Search is no longer triggered by timers or "on change." It now executes specifically when you press Enter or click the Search button, preventing unnecessary API calls.
- Refined Layout: * The "Add" and "Estimate" buttons have been moved to clear space for more filters and improve UI logic.
- Implemented search by format terms for music.
- Code Improvements: * Standardized format terms moved to a constants file for better reusability.
- Decoupled filters from the URL structure for a more robust navigation experience.
🛡️ Security & Bug Fixes
- Dependency Update: Upgraded
multerfrom1.4.5-lts.2to2.1.1to ensure a more secure environment for file uploads. (thank you @HolyFab) - Module Logic Fix: Fixed a bug that prevented users from deleting an item if its corresponding module was disabled (e.g., being unable to delete a book while the Books module was toggled off, hello @crispybegs!).
Important
I highly recommend performing a full backup of your library before updating DVinyl. Just in case!
Thanks a lot for using DVinyl! It's always a pleasure to get your feedback <3