A native, cross-platform music aggregator built with Rust, React, and GStreamer.
Download | Report Bug | Discord | Website
NekoBeat is not a wrapper for a website. It is a native, hardware-accelerated audio engine that combines Rust's safety, React's fluidity, and GStreamer's audio pipeline to deliver an audiophile-grade listening experience — without the bloat of Electron.
Search and stream from YouTube, SoundCloud, and Spotify — all from one unified interface. NekoBeat resolves audio through a custom scraping engine with yt-dlp fallback for maximum reliability.
Every liked track is automatically cached to your local drive. Your library plays instantly with zero latency, regardless of internet connectivity.
A GStreamer-powered equalizer integrated directly into the Rust audio pipeline. 10 frequency bands from 31 Hz to 16 kHz with real-time, stutter-free adjustment.
Auto-fetched lyrics from Genius with manual .lrc / .srt / .vtt upload support. Per-track timing offset adjustment, multi-language rendering, and persistent storage across sessions.
When playing YouTube tracks, the music video auto-plays in an embedded window, synchronized with the audio stream.
Live Last.fm scraping surfaces globally trending tracks. One click routes any discovery directly into the search engine.
Track titles, artists, remaining time, and album art broadcast to your Discord profile — handled entirely by the Rust backend.
In-app update checking with one-click install. Built on the Tauri updater plugin with signed releases.
Compact always-on-top floating player with album art, track info, and playback controls. Click anywhere to drag. One click to shrink, one click to expand back.
Full Windows SMTC / macOS Now Playing integration with play, pause, next, previous, and seek controls.
| Layer | Technology |
|---|---|
| Core | Rust |
| Framework | Tauri v2 |
| Frontend | React + TypeScript |
| Styling | Tailwind CSS |
| Animations | Framer Motion |
| Audio Engine | GStreamer |
| Stream Resolution | Custom scraping + yt-dlp fallback |
| Database | SQLite (via rusqlite) |
| Lyrics | Genius API scraping |
Install with winget for automatic updates:
winget install NekoBeatOr download manually from the Releases page:
NekoBeat_x64-setup.exe(portable installer)NekoBeat_x64.msi(system-wide)
The Windows installer bundles all dependencies including GStreamer — no manual setup required.
- macOS: Coming soon
- Linux: Coming soon
- Android: Coming soon
Prerequisites:
git clone https://github.com/nishal21/NekoBeat.git
cd NekoBeat
npm install
npm run tauri dev# Build signed installer (Windows)
.\scripts\build-release.ps1This produces signed .exe and .msi installers with .sig files for the auto-updater.
nekobeat/
├── src/ # React frontend
│ ├── App.tsx # Main application
│ └── hooks.ts # Custom React hooks
├── src-tauri/
│ ├── src/
│ │ ├── main.rs # Entry point & GStreamer init
│ │ ├── lib.rs # Tauri command registration
│ │ ├── audio.rs # GStreamer playback engine
│ │ ├── aggregator/ # Search, resolve, Spotify, SoundCloud
│ │ ├── offline.rs # Local caching & liked songs
│ │ └── library.rs # SQLite database operations
│ ├── gstreamer/ # Bundled GStreamer runtime
│ └── binaries/ # External tools (spotiflac-cli)
└── scripts/
├── build-release.ps1 # Signed release builder
└── publish-update.ps1 # Update manifest generator
NekoBeat was built with inspiration and reference from these amazing open-source projects:
- Harmonoid — Beautiful cross-platform music player built with Flutter. Influenced NekoBeat's UI/UX approach and local library management design.
- Muffon — Advanced multi-source music streaming & discovery client. Inspired the multi-source aggregation architecture.
- Muffon API — Backend API powering Muffon's multi-source integration. Referenced for source aggregation patterns.
- SpotiFLAC — Spotify to lossless FLAC downloader via Tidal/Amazon/Deezer fallback chain. Powers NekoBeat's Spotify playback pipeline.
- Spotify Lyrics API — Lightweight API for fetching synced lyrics from Spotify. Used for real-time lyrics display.
- MusicXMatch API — TypeScript wrapper for Musixmatch with automatic signature generation. Referenced for lyrics fetching.
Thank you to all the developers and contributors behind these projects.
- Discord: Join our server for discussions, support, and feature requests
- GitHub Discussions: Start a conversation — I read every single one!
- Website: NekoBeat
⭐ Every star fuels my motivation! If NekoBeat makes your day a bit brighter, hit that star button — it means the world to me.
Made with care by Nishal
"Music is the wine that fills the cup of silence."










