mirror of
https://github.com/afkarxyz/SpotiFLAC.git
synced 2026-04-26 15:45:54 +03:00
[PR #240] [CLOSED] New Features, CSV Import, Parallel Downloading, ISRC Lookup from DB (sqlite) #1884
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/SpotiFLAC#1884
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/afkarxyz/SpotiFLAC/pull/240
Author: @keypaa
Created: 1/7/2026
Status: ❌ Closed
Base:
main← Head:feature/all-features-combined📝 Commits (5)
5fae44cfeat: Add CSV playlist import featurea5d414bWIP: Add individual download buttons57987f1Merge feature/csv-playlist-import and add individual download buttonscac9db5feat: Add parallel downloads with settings controlc10a76ffeat: add database configuration and connection features📊 Changes
18 files changed (+7283 additions, -79 deletions)
View changed files
📝
app.go(+224 -2)➕
backend/csv_parser.go(+180 -0)➕
backend/database.go(+128 -0)📝
backend/file_dialog.go(+21 -0)📝
backend/folder.go(+28 -0)➕
frontend/package-lock.json(+5638 -0)📝
frontend/package.json.md5(+1 -1)📝
frontend/src/App.tsx(+9 -1)➕
frontend/src/components/CSVImportPage.tsx(+656 -0)📝
frontend/src/components/SettingsPage.tsx(+98 -2)📝
frontend/src/components/Sidebar.tsx(+19 -2)📝
frontend/src/hooks/useDownload.ts(+153 -68)📝
frontend/src/lib/api.ts(+10 -1)📝
frontend/src/lib/settings.ts(+15 -1)📝
frontend/src/types/api.ts(+48 -0)📝
go.mod(+11 -0)📝
go.sum(+42 -0)📝
wails.json(+2 -1)📄 Description
This pull request introduces significant new functionality for importing, parsing, and batch processing Spotify playlists from CSV files, as well as improved integration with a local SQLite database for ISRC (International Standard Recording Code) lookups. The changes span backend and frontend code, adding new APIs, file dialog utilities, and UI components to support these workflows.
Key new features and improvements include:
CSV Playlist Import and Batch Processing:
backend/csv_parser.go) to parse Spotify-exported CSV playlist files, extracting track metadata and handling data normalization and validation.app.gofor selecting CSV files, parsing playlists, checking if tracks already exist (to avoid redundant downloads), and batch downloading tracks from CSV.CSVImportPage) and kept it mounted in the UI to preserve download state during batch operations. [1] [2] [3]Database Integration for ISRC Lookup:
backend/database.go) for querying a local SQLite database for ISRCs by Spotify ID, including schema validation and connection testing.app.goto get ISRCs with a fallback to the Spotify API, and to test database connections from the frontend.File Dialog Utilities:
Other:
frontend/package.json.md5to reflect changes in frontend dependencies.These changes provide a robust foundation for advanced batch import and metadata workflows, improving usability for users managing large playlists and leveraging local metadata databases.
CSV Playlist Import and Batch Processing
backend/csv_parser.goto parse Spotify CSV playlists, extracting and validating track metadata into a structured format.app.gofor selecting CSV files, parsing playlists, checking for existing tracks, and batch downloading from CSV.CSVImportPagein the frontend and ensured it remains mounted to preserve download state during batch operations. [1] [2] [3]Database Integration for ISRC Lookup
backend/database.gofor querying ISRCs by Spotify ID from a local SQLite database, with schema validation and connection testing.app.gofor ISRC lookup with fallback to Spotify API and for testing database connectivity.File Dialog Utilities
Other
frontend/package.json.md5) to reflect new and changed frontend files.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.