A Cider plugin that shows minimal checkmark icons on album tracks that are in your Apple Music library.
- ✅ Visual Indicators: Shows a subtle checkmark on tracks that are in your library
- 🎯 Album View Only: Works exclusively on album pages (playlists excluded)
- ⚡ Smart Caching: Configurable cache durations for optimal performance
- 🔄 Loading Icons: Optional spinning indicators while checking library status
- ⚙️ Customizable Settings: Full control over cache durations and display options
- 💾 Persistent Storage: Caches library data in localStorage for fast subsequent loads
- Open Cider
- Go to Settings → Plugins → Marketplace
- Search for "Library Checkmark"
- Click Install
- Download the latest release from Releases
- Extract the ZIP file
- Copy the plugin folder to your Cider plugins directory:
- Windows:
%APPDATA%\C2Windows\plugins - macOS:
~/Library/Application Support/sh.cider.electron/plugins - Linux:
~/.config/sh.cider.electron/plugins
- Windows:
- Restart Cider
# Clone the repository
git clone https://github.com/brendeni1/cider-library-checkmark.git
cd cider-library-checkmark
# Install dependencies
pnpm install
# Build the plugin
pnpm run build
# The built plugin will be in dist/brendeni1.library-checkmarkAccess plugin settings via: Cider Settings → Plugins → Library Checkmark → Settings Icon
-
Library Cache Duration (1-60 minutes, default: 5)
- How long to cache your complete library list
- Recommended: 5 minutes for optimal balance
-
Single Song Cache Duration (1-30 minutes, default: 2)
- How long to cache individual song library status checks
- Recommended: 2 minutes to quickly reflect recent changes
- Enable Loading Icons (toggle, default: enabled)
- Shows a spinning icon while checking library status
- Disable for a cleaner, minimal interface
- Refetch Library - Manually refresh your library data and update all checkmarks
- Clear Cache - Clear all cached data (forces fresh fetch on next check)
- Initial Load: When you view an album, the plugin fetches your complete library catalog
- Smart Caching: Your library list is cached for 5 minutes (configurable)
- Track Checking: Each track is checked against your cached library
- Visual Feedback: Checkmarks appear on tracks in your library (if not favorited)
- Performance: Individual song checks are cached for 2 minutes (configurable)
The plugin uses a two-tier caching system:
-
Library Catalog Cache (5 min default): Stores the complete list of your library songs
- Saved to localStorage for persistence across sessions
- Refreshes automatically after expiration
-
Individual Song Cache (2 min default): Stores library status for specific tracks
- In-memory only (cleared on page refresh)
- Provides quick responses for recently checked songs
Access via browser console:
// Manually refresh library and update all checkmarks
window.libraryCheckmarkPlugin.refreshLibraryCheckmarks()
// Clear all cached library data
window.libraryCheckmarkPlugin.clearLibraryCache()
// Legacy commands (still supported)
refreshLibraryCheckmarks()
clearLibraryCache()- Requires: Cider 2.5 or later
- Library Size: Supports up to 25,000 songs
- API Rate Limiting: Smart batching prevents API throttling
- DOM Observer: Automatically detects new tracks without manual refresh
- No External Dependencies: Pure TypeScript/Vue implementation
- Ensure you're on an album view (not a playlist)
- Try the Refetch Library button in settings
- Check browser console for error messages
- Verify you're signed into Apple Music
- Increase cache durations in settings
- Disable loading icons if not needed
- The initial fetch may take time for 10k+ song libraries
- Ensure browser localStorage is enabled
- Try clearing cache and refetching
- Restart Cider
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
# Start development server with hot reload
pnpm run dev
# Build for production
pnpm run build
# Prepare marketplace package
pnpm run prepare-marketplaceMIT License - see LICENSE file for details
- Created by brenden.i1
- Built for Cider
- Report bugs: GitHub Issues
- Feature requests: GitHub Discussions
Note: This plugin requires an active Apple Music subscription and only works within the Cider music player.
