๐ต TuneSwap
Seamlessly convert Spotify links to Apple Music with one click.
A Chrome extension that automatically intercepts Spotify links and opens them in Apple Music, making music platform switching effortless.

โจ Features
- ๐ Automatic Link Conversion: Clicks on Spotify links are automatically redirected to Apple Music search
- ๐ฑ๏ธ Context Menu Integration: Right-click any Spotify link to convert it instantly
- โ๏ธ Smart Country Detection: Automatically uses your regionโs Apple Music storefront
- ๐ Usage Statistics: Track how many links youโve converted
- ๐ฏ Intelligent Matching: Uses multiple methods to extract song metadata for accurate searches
๐ ๏ธ Customizable Settings
- Enable or disable the extension
- Choose to open links in new tabs
- Select your preferred country/region
- Toggle notifications
- View detailed conversion statistics
๐ How It Works
TuneSwap uses advanced techniques to provide seamless music platform conversion:
- Link Detection: Content script detects clicks on Spotify links across any webpage
- Metadata Extraction: Uses Spotifyโs oEmbed API and web scraping to get song details
- Smart Search Generation: Creates optimized Apple Music search URLs with extracted metadata
- Regional Optimization: Automatically uses the correct Apple Music storefront for your region
๐ง Technical Implementation
The extension consists of:
- Content Script (
content.js
): Handles link interception and metadata extraction
- Background Service Worker (
background.js
): Manages settings, context menus, and statistics
- Popup Interface (
popup.html
+ popup.js
): Provides user controls and statistics
- Manifest (
manifest.json
): Defines extension permissions and components
๐ฆ Installation
From Source (Developer Mode)
- Clone the repository:
git clone https://github.com/yourusername/tuneswap.git
cd tuneswap
- Open Chrome Extensions:
- Navigate to
chrome://extensions
- Enable โDeveloper modeโ (top-right toggle)
- Load the extension:
- Click โLoad unpackedโ
- Select the cloned directory
- Start using TuneSwap! ๐
From Chrome Web Store (Coming Soon)
TuneSwap will be available on the Chrome Web Store soon for easy one-click installation.
๐ฏ Usage
Automatic Conversion
- Browse any website with Spotify links (Twitter, Reddit, blogs, etc.)
- Click any Spotify link
- TuneSwap automatically opens the corresponding Apple Music search
- Find your music instantly! ๐ต
Manual Conversion
- Right-click any Spotify link
- Select โConvert to Apple Musicโ from context menu
- Apple Music opens with optimized search results
Settings & Statistics
- Click the TuneSwap icon in Chrome toolbar
- View your conversion statistics
- Adjust settings for optimal experience
- Test the conversion functionality
๐ Supported Content Types
TuneSwap handles all Spotify content types:
- ๐ต Tracks:
https://open.spotify.com/track/[ID]
- ๐ฟ Albums:
https://open.spotify.com/album/[ID]
- ๐จโ๐ค Artists:
https://open.spotify.com/artist/[ID]
- ๐ฑ Playlists:
https://open.spotify.com/playlist/[ID]
๐๏ธ Project Structure
tuneswap/
โโโ manifest.json # Extension configuration
โโโ background.js # Service worker (background tasks)
โโโ content.js # Content script (link interception)
โโโ popup.html # Popup interface
โโโ popup.js # Popup functionality
โโโ diagnostic.js # Debug utilities
โโโ index.html # Demo page
โโโ tuneswap.svg # Logo
โโโ icons/ # Extension icons
โโโ README.md # This file
โ ๏ธ Current Limitations
- Search-Based Results: Redirects to Apple Music search (not direct links) for maximum compatibility
- No Account Integration: Doesnโt connect to your Apple Music account (yet!)
- Region Dependent: Results quality varies by Apple Music region availability
- Metadata Dependent: Accuracy depends on Spotifyโs available metadata
๐ Roadmap & Future Features
๐ฏ Short Term
๐ฎ Long Term
๐ Premium Features (Planned)
- Unlimited conversions
- Advanced analytics
- Batch conversion
- Cross-device sync
- Priority support
๐ Troubleshooting
Extension Not Working?
- Check that TuneSwap is enabled in
chrome://extensions
- Verify the extension has necessary permissions
- Try refreshing the webpage
- Check console for error messages (F12 โ Console)
Links Not Converting?
- Ensure the link is a valid Spotify URL
- Check your internet connection
- Verify your selected country in TuneSwap settings
- Try the โTest Conversionโ button in the popup
Need More Help?
- Open an issue on GitHub
- Check the diagnostic tools in the extension
- Contact support at hello@tuneswap.xyz
๐ค Contributing
We welcome contributions! Hereโs how you can help:
- ๐ Report Bugs: Open an issue with detailed steps to reproduce
- ๐ก Suggest Features: Share your ideas for new functionality
- ๐ง Submit PRs: Help improve the codebase
- ๐ Improve Docs: Help make the documentation better
- ๐ Spread the Word: Share TuneSwap with other music lovers!
Development Setup
git clone https://github.com/yourusername/tuneswap.git
cd tuneswap
# Load in Chrome as unpacked extension
# Make changes and reload extension to test
๐ License
MIT License
Copyright (c) 2025 Carlos Vidal
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the โSoftwareโ), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED โAS ISโ, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
**Made with โค๏ธ for music lovers everywhere**
[๐ Website](https://tuneswap.xyz) โข [๐ Issues](https://github.com/yourusername/tuneswap/issues) โข [๐ฌ Discussions](https://github.com/yourusername/tuneswap/discussions)