Skip to content

tomzdev/spotify-migration-tool

Repository files navigation

๐ŸŽต Spotify Migration Tool

Spotify Migration Tool Version License

๐Ÿš€ Migra facilmente playlist, brani salvati e artisti seguiti tra account Spotify diversi

Un'applicazione web moderna e sicura per trasferire la tua libreria musicale


๐Ÿ“‹ Indice


โœจ Caratteristiche

๐Ÿš€ Funzionalitร  Principali

  • โœ… Architettura Single-App - Una sola configurazione Spotify
  • โœ… Autenticazione Sicura - OAuth2 + refresh automatico token
  • โœ… Zero Perdite - Controllo duplicati intelligente
  • โœ… Interfaccia Moderna - Design responsive con Material-UI
  • โœ… Logging Dettagliato - Monitoraggio completo delle operazioni
  • โœ… Gestione Errori - Recovery automatico e retry intelligente

๐ŸŽฏ Cosa puoi migrare

๐ŸŽต Playlist

  • โœ… Tutte le playlist (pubbliche e private)
  • โœ… Nomi e descrizioni originali
  • โœ… Ordine dei brani mantenuto
  • โœ… Immagini personalizzate delle playlist

๐Ÿ’š Brani Salvati

  • โœ… Tutti i brani "Mi piace"
  • โœ… Fino a 10.000+ brani
  • โœ… Controllo duplicati automatico
  • โœ… Gestione batch intelligente

๐Ÿ‘จโ€๐ŸŽค Artisti Seguiti

  • โœ… Tutti gli artisti che segui
  • โœ… Migrazione batch ottimizzata
  • โœ… Verifica automatica duplicati
  • โœ… Processo veloce e affidabile

๐Ÿš€ Installazione e Setup

๐Ÿ“‹ Prerequisiti

Ti servono:

  • Node.js (versione LTS): Scarica qui
  • Due account Spotify (gratuiti o premium)
  • Una app Spotify nel Developer Dashboard

๐ŸŒŸ Step 1: Scaricare l'Applicazione

Metodo 1 - Download ZIP:

  1. Vai su https://github.com/tomzdev/spotify-migration-tool
  2. Clicca "Code" โ†’ "Download ZIP"
  3. Estrai nella cartella che preferisci

Metodo 2 - Git Clone:

git clone https://github.com/tomzdev/spotify-migration-tool.git
cd spotify-migration-tool

๐ŸŽต Step 2: Configurare App Spotify

โš ๏ธ IMPORTANTE: Questo รจ il passaggio piรน critico!

2.1 Crea l'App Spotify

  1. Vai su: Spotify Developer Dashboard
  2. Accedi con qualsiasi account Spotify
  3. Clicca su "Create app"

2.2 Configura l'App

Compila i campi:

Campo Valore
App name Spotify Migration Tool
App description Tool per migrare playlist tra account Spotify
Website http://localhost:5000
Redirect URI Vedi sotto โฌ‡๏ธ

2.3 Aggiungi i Redirect URI

๐Ÿ”‘ CRUCIALE: Aggiungi ESATTAMENTE questi due URI:

  1. http://localhost:5000/api/auth/source/callback
  2. http://localhost:5000/api/auth/destination/callback

2.4 Ottieni le Credenziali

  1. Salva l'app
  2. Vai su "Settings"
  3. Copia il Client ID e Client Secret

2.5 Aggiungi Utenti di Test

  1. Vai su "User Management"
  2. Aggiungi l'email dell'account sorgente
  3. Aggiungi l'email dell'account destinazione

โš™๏ธ Step 3: Configurazione Locale

3.1 Installa le Dipendenze

# Installa dipendenze backend
npm install

# Installa dipendenze frontend e build
cd client
npm install
npm run build
cd ..

3.2 Configura Environment

Metodo veloce:

  1. Copia il file config-example.env
  2. Rinominalo in .env
  3. Modifica i valori:
# Sostituisci con i tuoi valori reali
SPOTIFY_CLIENT_ID=il_tuo_client_id
SPOTIFY_CLIENT_SECRET=il_tuo_client_secret

# NON modificare questi
SPOTIFY_REDIRECT_URI=http://localhost:5000/api/auth/source/callback
DEST_REDIRECT_URI=http://localhost:5000/api/auth/destination/callback

# Genera una stringa casuale lunga
SESSION_SECRET=stringa_casuale_molto_lunga_e_sicura

PORT=5000

๐Ÿš€ Step 4: Avviare l'Applicazione

npm start

Output atteso:

๐Ÿš€ Server avviato su porta 5000
๐ŸŽต Spotify Migration Tool pronto!
๐ŸŒ Apri: http://localhost:5000

Apri il browser su: http://localhost:5000


๐ŸŽฎ Come Usare l'App

๐Ÿ  Interfaccia Principale

Quando apri l'app vedrai:

๐ŸŽต Spotify Migration Tool
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ“Š Stato Configurazione: โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 0%

๐Ÿ”ธ Passaggio 1: Connetti Account Sorgente     [ Non Connesso ]
๐Ÿ”ธ Passaggio 2: Connetti Account Destinazione [ Non Connesso ]  
๐Ÿ”ธ Passaggio 3: Inizia Migrazione            [ Non Disponibile ]

1๏ธโƒฃ Connetti Account Sorgente

  1. Clicca su "Connetti Account Sorgente"
  2. Accedi con l'account da cui vuoi copiare i dati
  3. Autorizza l'applicazione

2๏ธโƒฃ Connetti Account Destinazione

  1. Clicca su "Connetti Account Destinazione"
  2. โš ๏ธ IMPORTANTE: Se vedi l'account precedente, clicca "Non sei tu?"
  3. Accedi con l'account destinazione
  4. Autorizza l'applicazione

3๏ธโƒฃ Avvia la Migrazione

  1. Clicca su "Inizia Migrazione"

  2. Seleziona cosa migrare:

    • โ˜‘๏ธ Playlist
    • โ˜‘๏ธ Brani Salvati
    • โ˜‘๏ธ Artisti Seguiti
  3. Clicca "Avvia Migrazione"

๐Ÿ“Š Monitoraggio Progresso

Durante la migrazione vedrai aggiornamenti in tempo reale:

๐ŸŽต Migrazione in Corso...
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ“‹ Playlist:       โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 15/27 (55%)
๐Ÿ’š Brani Salvati:  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘ 312/1247 (25%)  
๐Ÿ‘จโ€๐ŸŽค Artisti:       โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 89/89 (100%) โœ…

โฑ๏ธ Tempo trascorso: 2m 34s

๐Ÿ› ๏ธ Troubleshooting

๐Ÿ”ด Errori Comuni

โŒ "INVALID_CLIENT: Invalid redirect URI"

  • Problema: Redirect URI non configurati correttamente
  • Soluzione: Verifica che nell'app Spotify ci siano ESATTAMENTE:
    • http://localhost:5000/api/auth/source/callback
    • http://localhost:5000/api/auth/destination/callback

โŒ "403 Forbidden" durante l'autenticazione

  • Problema: Account non aggiunto come utente di test
  • Soluzione: Vai su User Management e aggiungi l'email dell'account

โŒ "Cannot connect to server"

  • Problema: Porta 5000 occupata
  • Soluzione: Cambia porta nel file .env (es. PORT=3000)

โŒ App si chiude o errori NPM

  • Problema: Dipendenze corrotte
  • Soluzione:
    rm -rf node_modules client/node_modules
    npm install
    cd client && npm install && npm run build && cd ..

๐ŸŸก Avvertimenti Non Critici

โš ๏ธ "Source and destination accounts are the same"

  • Non grave, ma inutile migrare da un account a se stesso

โš ๏ธ "Some tracks could not be migrated"

  • Normale per brani non disponibili nella regione o rimossi da Spotify

โ“ FAQ

โ“ Posso usare account gratuiti?

  • Sรฌ! Funziona con account gratuiti e premium

โ“ I miei dati sono sicuri?

  • Assolutamente sรฌ. L'app non salva credenziali, usa solo API ufficiali Spotify

โ“ Quanti brani posso migrare?

  • Teoricamente illimitati (gestisce automaticamente migliaia di brani)

โ“ Cosa succede se interrompo la migrazione?

  • Puoi fermare e riavviare quando vuoi, evita automaticamente i duplicati

โ“ Funziona su Mac/Linux?

  • Sรฌ, funziona su qualsiasi sistema con Node.js

โ“ Posso migrare tra paesi diversi?

  • Sรฌ, ma alcuni brani potrebbero non essere disponibili per motivi di licensing

๐Ÿ†˜ Supporto

Hai problemi?

Prima di chiedere aiuto:

  1. Controlla questa guida
  2. Verifica la sezione Troubleshooting
  3. Cerca nelle Issues esistenti

About

A web application to migrate playlists, saved tracks, and followed artists between Spotify accounts

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages