Retour au classement

sjdonado/idonthavespotify

TypeScriptidonthavespotify.sjdonado.com

Effortlessly convert music links between streaming services

spotifytailwindcssdeezer-apibunhtmxstimulus
Croissance des étoiles
Étoiles
1.9k
Forks
50
Croissance hebdomadaire
Issues
5
5001k1.5k
mars 2023avr. 2024juin 2025juil. 2026
Artefactsnpmnpm install idonthavespotify
README

IDHS (I Don't Have Spotify)

Copy a link from your favorite streaming service, paste it into the search bar, and voilà! Links to the track on all other supported platforms are displayed. If the original source is Spotify you'll even get a quick audio preview to ensure it's the right track.

Note: Playlists are out of scope. Only individual tracks, albums, artists, and podcasts are supported.

Supported Streaming Services

Adapters represent the streaming services supported by the Web App and the Raycast Extension. Each adapter allows the app to convert links from one platform to others. The table below shows which features are available for each one:

Adapter Inverted Search Official API Verified Links
Spotify Yes No Yes
Tidal Yes Yes Yes
YouTube Music Yes No Yes
Apple Music Yes No Yes
Deezer Yes Yes Yes
SoundCloud Yes No Yes
Qobuz Yes No Yes
Bandcamp Yes No Yes
Pandora Yes No Yes

Architecture overview: Parsers and Adapters

IDHS extracts metadata from the provided link and uses that information to create a new query for public search engines or official APIs, such as Apple Music, YouTube, and SoundCloud. It selects the result that seems most relevant, but it cannot guarantee that the returned link is the exact track you want or even a song at all. Suggestions for improving the query-building workflow are welcome, with the main constraint being to keep requests fast and excluding brute-force retries to avoid rate limits.

Parsers (src/parsers)

Identify the incoming link's platform and extract normalized metadata (title, description, type, image, and optional audio) as well as a consistent search query. For example, a Spotify link is parsed to gather Open Graph metadata and produce a query string that represents the track/album/artist/show/episode. This query is later used to search other platforms.

Adapters (src/adapters)

Turn that normalized query into outbound links for each destination platform (Spotify, YouTube Music, Apple Music, Deezer, SoundCloud, Tidal). Each adapter is responsible for:

  • Performing a platform-specific search (API or HTML-based) using the normalized query
  • Returning a result with type, url, and flags like isVerified and notAvailable
  • Preferring "verified" links when the platform provides a reliable match signal

This separation keeps the system modular: parsers focus on understanding the source, while adapters focus on finding the best possible destination links.

Web App

image

Extensions

Raycast

Source code: https://github.com/raycast/extensions/tree/main/extensions/idonthavespotify

Local Setup

The list of environment variables is available in .env.test. To complete the values for the following variables:

Note: Spotify search uses an anonymous access token extracted from the Spotify web player (open.spotify.com) via a TOTP-based authentication flow. This is necessary because as of March 2026, Spotify restricted their Web API to require a Premium account for Development Mode and limited the available endpoints. Since this project doesn't have a premium account, we use the same internal GraphQL API that the Spotify web player itself uses. The token is auto-refreshed (~1 hour expiry) and requires no developer account.

Ensure that the values are correctly added to your .env file to configure the API keys properly.

  • To get the app up:
bun install
bun dev
  • To run with url-shortener:

Set this ENV file URL_SHORTENER_API_KEY, with the value used in docker-compose.yml

docker compose up -d
bun install
bun dev

More info

Contributions are more than welcome, just open a PR and I'll review it promptly.

Icon Generated by https://deepai.org/machine-learning-model/text2img
Dépôts similaires
DIYgod/RSSHub

🧡 Everything is RSSible

TypeScriptnpmGNU Affero General Public License v3.0rsstwitter
docs.rsshub.app
45.3k10k
GorvGoyl/Clone-Wars

100+ open-source clones of popular sites like Airbnb, Amazon, Instagram, Netflix, Tiktok, Spotify, Whatsapp, Youtube etc. See source code, demo links, tech stack, github stars.

GNU Affero General Public License v3.0clonetiktok
gourav.io/clone-wars
36.3k3.3k
spotDL/spotify-downloader

Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).

PythonPyPIMIT Licensemp3spotify
spotdl.readthedocs.io/en/latest/
25.5k2.2k
spicetify/cli

Command-line tool to customize Spotify client. Supports Windows, macOS, and Linux.

JavaScriptnpmGNU Lesser General Public License v2.1spotifycustomization
spicetify.app
23.8k898
SpotX-Official/SpotX

SpotX patcher used for patching the desktop version of Spotify

PowerShellMIT Licensespotifyspotify-desktop-client
21.8k1.1k
Rigellute/spotify-tui

Spotify for the terminal written in Rust 🚀

Rustcrates.ioMIT Licensespotifyspotify-api
19.3k577
nukeop/nuclear

Streaming music player that finds free music for you

TypeScriptnpmGNU Affero General Public License v3.0music-playermusic
nuclearplayer.com
18.1k1.3k
Shabinder/SpotiFlyer

Kotlin Multiplatform Music Downloader, Supports Spotify / Gaana / Youtube Music / Jio Saavn / SoundCloud.

KotlinGNU General Public License v3.0spotify-downloadermp3
spotiflyer.in
11.2k816
Spotifyd/spotifyd

A spotify daemon

Rustcrates.ioGNU General Public License v3.0spotifyspotifyd
spotifyd.rs
10.7k508
maxrave-dev/SimpMusic

A cross-platform music app using YouTube Music for backend

KotlinGNU General Public License v3.0androidandroid-application
simpmusic.org
10k487
spotbye/SpotiFLAC

Get Spotify tracks in true FLAC from Tidal, Qobuz & Amazon Music — no account required.

TypeScriptnpmMIT Licensespotifyspotify-downloader
spotbye.qzz.io
9.9k533
WXRIW/Lyricify-App

Lyricify (/lɪ'rɪsəfaɪ/), a fantastic app to provide scroll lyrics for Spotify and other apps. 一款为 Spotify 等各种应用提供滚动歌词的软件。

spotifyqq-music
lyricify.app
7.1k125