A modern, high-fidelity music player built with Electron, Vite, and Vue.
EchoVault is designed to provide a clean, responsive interface and rich playback features for local lossless audio collections.
- Overview
- Features
- Screenshots
- Installation (Development)
- Available Commands
- Build & Distribution
- Project Structure
- Contribute
EchoVault is a cross-platform desktop application focused on providing smooth, high-quality local music playback. The project is currently in Alpha phase, meaning core features are functional but may be incomplete or unstable.
- High-fidelity playback for FLAC, WAV, ALAC, and MP3 formats
- Local library management with caching for instant load times
- Mini Player mode for a compact, floating playback interface
- Responsive and adaptive UI for all desktop platforms
- Cross-platform builds (Windows, Linux)
Follow these steps to clone the repository and set up your development environment.
git clone https://github.com/ACS-lessgo/EchoVault.git
cd EchoVault- Select the development branch
git checkout release/v1.0.0- Install dependencies Make sure you have Node.js (v18 or higher) and npm installed, then run:
npm install- Start the development environment This will start the Vite renderer and Electron main process:
npm run startAfter the build completes, an Electron window should open automatically.
Command Description
npm run start | Run EchoVault in development mode using Vite + Electron
npm run lint | Lint the project using ESLint
npm run make | Build and package the app for your current platform
npm run publish | Package and publish to GitHub Releases (requires GITHUB_TOKEN)
npm run package | Create a distributable package without publishingTo create a packaged release version for your OS:
npm run makeOutput builds are generated in:
out/make/Typical build outputs:
Windows: .exe installer
Linux: .AppImage and .deb
If you want to publish directly to GitHub Releases:
export GITHUB_TOKEN=your_token_here
npm run publishEchoVault/
├── src/
│ ├── main.js # Electron main process
│ ├── preload.js # Preload scripts
│ ├── frontend/ # Vite + Vue app source
│ ├── backend/ # Local DB and playback utilities
│ └── assets/ # Icons, media, and static files
│
├── forge.config.js # Electron Forge configuration
├── vite.main.config.mjs # Vite configuration for main process
├── vite.renderer.config.mjs # Vite configuration for renderer
├── package.json
├── RELEASE_NOTES.md
└── README.mdRelease Notes
-
See detailed notes for each version in RELEASE_NOTES.md.
-
Current stable version: v1.0.0-alpha
Create a feature branch:
git checkout -b feature/your-feature-nameCommit your changes:
git commit -m "Added new feature: your description"Push the branch and open a Pull Request :)












