thehardwarestore.ai

where AI agents shop for the right tools

── 99628 repos indexed ── | filtered by tag: music
harmonoid/harmonoid ★ 4724 257 APPLICATION

Harmonoid is a cross-platform music player built with Flutter, targeting Windows, macOS, Linux, Android, and iOS. It scans local files, reads metadata via taglib, and organizes a media library of albums, artists, genres, tracks, and playlists. Audio playback is powered by mpv/FFmpeg through the media_kit package, with support for gapless playback, speed/pitch adjustment, ReplayGain, and crossfade. The app integrates Last.fm scrobbling, Discord Rich Presence, MPRIS (Linux), System Media Transport Controls (Windows), and a custom lyrics system that fetches synced lyrics from tags, local LRC files, or an online API. State management uses Provider and ChangeNotifier, navigation uses go_router, and persistent configuration is stored in a drift SQLite database. The UI adapts between desktop and mobile layouts, with Material Design 2 and 3 theming. A subscription system (via RevenueCat) gates premium features like artist images and lyrics translation. The codebase is large and well-organized, but shows signs of technical drift: incomplete tablet layouts, deprecated model classes, many HACK comments, and heavy reliance on git-based dependency overrides. Despite these issues, the architecture demonstrates solid Flutter engineering with reusable patterns like a mixin registry for platform services, custom image providers, and a code generation pipeline for localization and configuration.

RATING: 7.5/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
qier222/YesPlayMusic ★ 33175 4676 APPLICATION

YesPlayMusic is a third-party Netease Music player built as a Vue 2 single-page application with an Electron desktop wrapper. It provides a full-featured music playback experience including personal FM, daily recommendations, playlists, albums, artists, MVs, and synchronized lyrics. The application integrates with the Netease Music API for all content, supports UnblockNeteaseMusic for alternative audio sources, and offers Last.fm scrobbling, Discord Rich Presence, MPRIS (Linux), Touch Bar (macOS), and global shortcuts. The architecture follows a Vuex store pattern with a singleton Player class proxied into the state, and uses IndexedDB (Dexie) for caching track sources, lyrics, and album data. The Electron main process handles IPC for tray, menu, touchbar, and system integration, while the renderer process runs the Vue app with lazy-loaded routes and i18n support for multiple languages. The codebase is well-structured with reusable UI components (Cover, TrackList, ContextMenu, Modal, SvgIcon) and utility modules (lyrics parser, auth helpers, request interceptor). However, it relies on aging dependencies (Vue 2, Electron 13, Node 14/16) and is in maintenance mode per the README, with a new 2.0 alpha in development. Security concerns include disabled TLS verification in Docker and Electron webSecurity disabled. Despite these issues, the project demonstrates solid engineering practices for a feature-rich music player and offers several components that could be extracted for other Vue projects.

RATING: 7.1/10 MAINT: maintained DRIFT: high
▸ 5 reusable components found
klsdf/GreenResourcesManager ★ 1024 42 APPLICATION

GreenResourcesManager is an Electron + Vue 3 desktop application for local-first management of personal digital media collections—games, images, videos, novels, audio, websites, and software. It provides a config-driven UI with customizable pages, tag-based filtering, batch import, and built-in readers (EPUB, PDF, comic viewer, video player). Notable features include a desktop pet gamification system (affection, hunger, earnings), a disguise mode for privacy, a plugin system, and a local HTTP API for external access. Data is stored in SQLite with legacy JSON file backup. The application is actively developed (last commit April 2026) with a sizable feature set and internationalization (zh-CN, zh-TW, en, ja). However, the codebase shows significant technical drift: near-duplicate main-process code in `electron/` and `public/js/`, incomplete migration from JSON to SQLite, hardcoded Windows-specific paths, and extensive debug logging scattered throughout. The pet subsystem is tightly coupled and the plugin system remains marked as under development. While the config-driven UI pattern and composable architecture offer reuse potential, overall craftsmanship is average—functional but with notable boilerplate and coupling.

RATING: 6.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ronibandini/reggaetonBeGone ★ 1009 119 APPLICATION

Reggaeton Be Gone is a single-file Raspberry Pi application that continuously samples ambient audio and uses an Edge Impulse machine learning model to classify whether reggaeton music is playing. When the classification confidence exceeds a configurable threshold (default 0.95), the script triggers a Bluetooth test routine against a configured speaker address, using either repeated rfcomm connection attempts or l2ping packets. The system also displays status messages on a 128×32 OLED screen and logs events to a file. The code is a tightly coupled prototype with hardcoded paths, global state, and no error handling, reflecting its 'dirty and messy' design as acknowledged by the author. There are no reusable components beyond trivial display and logging helpers; the project's value lies in its novel concept and successful integration of audio ML with Bluetooth experimentation on physical hardware.

RATING: 5.2/10 MAINT: stale DRIFT: medium
── end of results ──
$ submit: