NSMusicS  by Super-Badmen-Viper

Cross-platform music server/client for local/streaming libraries

created 2 years ago
2,133 stars

Top 21.6% on sourcepulse

GitHubView on GitHub
Project Summary

NSMusicS is a cloud-native music server and cross-platform client designed for audiophiles and music enthusiasts seeking advanced library management and a personalized listening experience. It offers enhanced features over existing solutions like Navidrome and Jellyfin, including detailed metadata tagging, AI-driven recommendations, and a rich playback environment.

How It Works

NSMusicS utilizes a multi-component architecture, featuring an Electron-based desktop client and a Go-based backend server. The system emphasizes robust music library management, supporting remote uploads, synchronization, and detailed metadata editing with API integrations. Its recommendation engine is planned to evolve from tag clouds to sophisticated knowledge graphs and LLM integration for personalized music discovery.

Quick Start & Requirements

  • Installation: Clone the repository and run npm install followed by npm run dev for development or npm run build for packaging.
  • Prerequisites: Node.js v20.15.0, npm v10.4.0. MPV media player executables need to be manually placed in NSMusicS\NSMusicS-Electron\resources\mpv-x86_64-20241124. Specific better-sqlite3 native modules may require manual placement or recompilation.
  • Resources: Requires sufficient disk space for music libraries and development tools.
  • Documentation: NSMusicS Electron

Highlighted Details

  • Supports multiple streaming servers including Navidrome, Jellyfin, and Emby.
  • Advanced music metadata management with support for artist avatars, photos, and multiple song quality/lyrics versions.
  • Phased implementation of AI-powered music recommendations, culminating in LLM integration.
  • Planned cross-platform mobile clients (Flutter) and integration with smart home ecosystems.

Maintenance & Community

The project is primarily developed by Xiang Cheng. Community discussion is available via QQ Group: 228440692. The project aims for standardized coding specifications to facilitate third-party plugin development.

Licensing & Compatibility

Licensed under A-GPL 3.0, with a stated prohibition of commercial use. This license may impose copyleft restrictions on derivative works.

Limitations & Caveats

The project is under active development with many features marked as "will developed" or "under development." The README indicates that coding standards are not yet fully standardized, and manual steps are required for certain dependencies like MPV and better-sqlite3. Commercial use is explicitly prohibited.

Health Check
Last commit

5 hours ago

Responsiveness

Inactive

Pull Requests (30d)
1
Issues (30d)
2
Star History
221 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.