Browse and search your Discogs record collection directly from Raycast — no browser required.
Your entire collection is fetched and cached locally, so search is instant. Filter by format, sort by recently added, and open any release to see its full tracklist, label, and pressing details.
- Instant fuzzy search across title, artist, label, genre, and style
- Filter by format — Vinyl, CD, Cassette, Digital, and more
- Sort by recently added (default), title, artist, or year
- Release detail view with full tracklist, cover art, label, country, and notes
- Open in Discogs or search on YouTube directly from any result
- Local cache with background revalidation — fast on repeat opens
- Simple auth via a personal access token — no OAuth flow required
- Generate a personal access token at discogs.com/settings/developers
- Open Raycast → search Search My Collection → open Preferences (
⌘,) - Enter your Discogs username and token
- Raycast (macOS)
- Node.js 18+
git clone https://github.com/formgeist/raycast-discogs.git
cd raycast-discogs
npm install
npm run devnpm run dev imports the extension into Raycast in development mode with hot reloading. Any saved change is reflected immediately.
src/
├── search-collection.tsx # Main command — list view with search, filter, sort
├── release-detail.tsx # Detail view pushed from list (tracklist, metadata)
├── use-collection.ts # Data fetching hook — pagination, caching, revalidation
└── types.ts # TypeScript interfaces for Discogs API responses
assets/
└── extension-icon.png # 512×512 extension icon
metadata/
└── description.md # Raycast Store description
| Command | Description |
|---|---|
npm run dev |
Start with hot reloading in Raycast |
npm run build |
Production build |
npm run lint |
Run ESLint + Prettier checks |
npm run fix-lint |
Auto-fix lint and formatting issues |
Contributions are welcome! Here's how to get started:
- Fork the repo and create a branch from
main - Install dependencies with
npm install - Run
npm run devto test your changes live in Raycast - Lint before committing —
npm run lint(ornpm run fix-lintto auto-fix) - Open a pull request with a clear description of what changed and why
- Wantlist command (
GET /users/{username}/wants) - Artist detail view
- Copy-to-clipboard actions (label, catalogue number, tracklist)
- Keyboard shortcut to add a rating
Please open an issue with steps to reproduce, your macOS version, and the Raycast version.
MIT
