* feat: remove nginx and serve Angular directly from Spring Boot
* fix: handle null values in EnabledFields deserialization from persisted JSON
* fix(migration): auto-repair failed Flyway migrations on startup
* fix(migration): replace DB triggers with app-level orphan cleanup
* fix: restore default port to 6060 for backwards compatibility
* fix: align all port references to 6060 and add OPDS compression MIME types
* fix: resolve NG0101 recursive tick error in book browser selection
---------
Co-authored-by: acx10 <acx10@users.noreply.github.com>
* fix: support reading alternative book formats using bookType query param
* feat: add streaming reader support for alternative EPUB formats
* refactor: extract tabs section into MetadataTabsComponent
* feat: implement per-file reading progress tracking
* feat: add configurable format priority with cascading fallback
* refactor: redesign library creator with single-page layout
* refactor: unify reading progress into ReadingProgressService
* refactor: improve delete options with clearer file format and book deletion
* refactor: improve book format matching with normalization and fuzzy fallback
* feat: add folder-based audiobook support with ZIP downloads and preparing state
* fix: display unique format types in metadata viewer
* refactor: auto-attach files to single book in folder during rescan
* feat: implement folder-centric book file grouping with fuzzy matching
* refactor: consolidate book grouping with organization mode support
* fix: use folder hash for folder-based audiobooks in auto-attach
* fix: delete only BookFileEntity on file removal, not entire book
* fix: set folderBased flag and correct file size for auto-attached audiobook folders
* fix: use count query to avoid lazy initialization in file delete handler
* fix: preserve book metadata when file is moved by detecting hash match
* fix: skip books with no files in restoration to avoid NPE
* fix: round all progress percentages to one decimal place before sending to UI
* style: improve library creator dialog spacing and layout
* fix: migrate FOLDER_AS_BOOK to BOOK_PER_FOLDER for backwards compatibility
* fix: FileMoveService now handles multi-file BookEntity properly
* style: redesign metadata-picker and file-mover UI components
* style: redesign file-naming-pattern UI and improve theme contrast
* style: relax spacing in library-creator component
* style: tighten directory-picker layout for consistency
* fix: PathPatternResolver now respects folderBased flag for audiobooks
* style: move checkmark column to left side and add pending status in file-mover
* refactor: consolidate BookFileType into BookType and add audiobook styling
* feat: show 'Continue Reading' button for in-progress books
* fix: preserve dots in folder names during grouping and prevent duplicate attachments
* style: reduce gap between download-all button and primary file section
* style: shorten 'Continue Reading' button to 'Read' on mobile
* feat: add DISK_TYPE config to disable file moves on network storage
* style: standardize settings pages with shared styles and consistent spacing
* style: revamp settings pages with modern card-based layouts
* style: revamp OPDS, auth, and task management settings layouts
* fix: update FileMoveService tests to include AppProperties parameter
* fix: derive BookFileType from extension when uploading additional book files
* feat: show format type and size in download button with dropdown for alternatives
* feat: add audiobook streaming player with HTTP Range support
* feat: add M4B chapter extraction and chapter navigation
* feat: add audiobook bookmarks and sleep timer
* refactor: split AudiobookReaderService into focused services
* feat: add Media Session API for background audio playback
* feat: display file extensions in format tags with distinct colors and add audiobook upload support
* feat: require bookFileId for viewer settings API
* fix: show split button for audiobooks with readable alternatives
* feat: improve reading sessions table with book type badges and better formatting
* feat: add audiobook play button in files tab
* feat: use file extension for format display and meaningful tab values
* feat: add extension field to BookFile DTO
* feat: use extension field for book card format pill
* fix: use mixed orientation for format priority drag-drop to support multi-line layout
* feat: add attach book files feature to consolidate single-file books
* fix: increase drag handle size for format priority chips
* fix: add missing BookFileRepository mock to BookServiceDeleteTests
* feat: add delete buttons to files tab and move shelf to other items menu
* feat: add physical books support for cataloging books without digital files
* refactor: redesign icon-picker component with improved styling
* refactor: redesign metadata-picker component with improved layout and alignment
* refactor: move Add Physical Book to top of library menu
* refactor: use p-autoComplete for authors/categories in add-physical-book dialog
* feat: add square cover search and display support for audiobooks
* fix: navigate to first page when opening unread ebooks
* fix: exclude API requests from service worker interception
* feat: support fileless books with automatic file attachment
* fix: bypass service worker for audiobook streaming requests
* refactor: remove alphabetical filter sorting, default to count, limit filters to 100
---------
Co-authored-by: acx10 <acx10@users.noreply.github.com>
* fixing permissions to be able to run springboot with given UID and GID
* Adding USER_ID and GROUP_ID to specify permission without making breaking change
* move su exec to start.sh
---------
Co-authored-by: Aditya Chandel <8075870+adityachandelgit@users.noreply.github.com>