Spotify controller + listening analytics for your browser.
Control playback, manage your queue, search tracks, track listening habits — without ever leaving your tab.
Most Spotify extensions give you a play/pause button and call it a day. ShardTune gives you the full picture — playback control, queue management, search, playlists, friend activity, and a complete analytics dashboard — all running locally in your browser with zero external dependencies.
No frameworks. No build step. No servers collecting your data. Just vanilla JS talking directly to the Spotify Web API.
Works on Chrome, Brave, Edge, and any Chromium-based browser.
Full player controls right from the popup — no need to tab over to Spotify.
- Now Playing — album art, live progress bar, waveform visualization
- Transport Controls — play/pause, next/prev, shuffle, repeat (with visual repeat-one indicator)
- Volume Control — with graceful handling for devices that don't support it
- Queue Management — view and play upcoming tracks, auto-refreshes on track change
- Search — find and play tracks or artists directly from the popup
- Add to Queue — queue any search result with one click
- Like/Save — save tracks to your library instantly
- Playlists — open a playlist to browse its tracks and play any one in context, or play the whole thing
- Device Switching — move playback between Spotify Connect devices
- Copy Track Link — one-click copy to clipboard
- Sleep Timer — 15/30/45/60 min presets or custom duration (up to 8 hours), with live countdown badge
- Session Stats — minutes listened, skips, unique artists, day streak
A full-page dashboard that breaks down your listening habits. All data is computed locally.
- Session Waveform — energy curve of your current listening session
- Peak Hours — discover when you listen most across a 24-hour breakdown
- Music Memory — 7-day x 24-hour grid of your listening patterns
- Session Vibe — mood and energy analysis for your current session
- Taste Profile — energy, popularity, and variety metrics from your top tracks
- Library Stats — liked songs count, unique artists, recent additions
- Top Artists & Tracks — your most-played music, ranked over the last 4 weeks, 6 months, or all time
- Listening Log — chronological history of recently played tracks
- Album Mosaic — visual grid of your recent albums
- Friend Activity — see what friends are playing in real time
- Vibe Sync — compare your music taste with friends using multi-factor matching
- Share Card — export your stats as a shareable PNG
- Export JSON — download raw analytics data for backup or your own analysis
- Liked Song Alerts — notifies you when a saved track comes on during shuffle
- Friend Activity — heads up when someone you follow starts playing
- Focus Reminders — gentle nudge after extended listening sessions
- Fully Configurable — toggle each notification type independently in Settings
| Action | Shortcut |
|---|---|
| Play / Pause | Alt + Shift + P |
| Next Track | Alt + Shift + Right |
| Previous Track | Alt + Shift + Left |
Customize these at chrome://extensions/shortcuts.
ShardTune uses a BYO-Client-ID model — you register your own Spotify app and keep full control of your credentials. No middleman server, no telemetry.
Heads up: Playback control (play/pause/skip/volume) requires Spotify Premium. That's a Spotify API restriction, not ours. Free accounts can still view now-playing info and analytics.
- Go to the Spotify Developer Dashboard
- Click Create App
- Name it whatever you want (e.g.,
ShardTune) - Add this Redirect URI:
http://127.0.0.1:43827/spotify/callback - Save and copy your Client ID
git clone https://github.com/hett-patell/ShardTune.git- Open
chrome://extensions(orbrave://extensions) - Enable Developer mode (top right)
- Click Load unpacked and select the
ShardTunefolder - Pin the extension to your toolbar
- Click the ShardTune icon in your toolbar
- Paste your Client ID and hit Save
- Click Connect Spotify and authorize
- You're in
popup / dashboard <──port──> service worker (MV3) <──Web API──> Spotify
|
chrome.storage.local
|
content scripts on open.spotify.com (friend activity)
- Auth — OAuth 2.0 PKCE with loopback redirect. Tokens stored locally, refreshed with a mutex to prevent stampede.
- Polling — Single-flight polling with fast interval when the popup is open, durable alarm fallback for service worker eviction. Respects
429 Retry-After. - Analytics — 100% local computation. Peak hours, music memory, and streaks persist through write-through caching so MV3 worker eviction doesn't lose data.
- Energy Proxy — Spotify has retired several Web API endpoints for new apps (audio-features, recommendations, related-artists), so energy is a deterministic proxy from popularity, duration, and explicitness — no deprecated calls.
Your data never leaves your device. No analytics servers, no tracking pixels, no third-party scripts. Everything lives in chrome.storage.local. One-click "Clear Analytics" in Settings wipes it all.
| Runtime | Chromium Manifest V3 |
| Language | Vanilla JavaScript (ES modules) |
| API | Spotify Web API |
| Dependencies | Zero |
| Build step | None |
| Storage | chrome.storage.local |
| Browser | Status |
|---|---|
| Brave | Primary, recommended |
| Chrome | Fully supported |
| Edge | Fully supported |
| Any Chromium | Should work |
- Not affiliated with, endorsed by, or sponsored by Spotify.
- Friend Activity and Vibe Sync use an unofficial Spotify endpoint that may break without notice.
- Playback control requires Spotify Premium (Spotify API restriction).
| Developer | Het Patel |
| Website | networkshard.com |
| Repository | hett-patell/ShardTune |
| Repo | What it does |
|---|---|
| ShardLure | SSH honeypot + threat-intel dashboard |
| ShardC2 | Red-team C2 framework in Go |
| ShardFlow | Layer-2 LAN workbench (ARP, drop, throttle) |
| ShardShell | PHP post-exploitation shell |
| ShardPass | Minimal TOTP authenticator (Chrome MV3) |
| ShardPet | Pixel-Pokémon browser extension |
| ShardTune | Spotify controller + listening analytics (Chrome/Brave) |
ShardTune — your music, your data, your browser.