A cross-platform music player with airdrop-style sharing capabilities.
- Cross-platform support (Android, iOS, Windows, macOS, Linux)
- Airdrop-style local sharing
- QR code sharing for individual songs
- Modern UI with animations
- Local media playback
- Playlist management
- Frontend: React Native (mobile), Electron (desktop)
- UI: TailwindCSS, Styled Components
- Media: FFmpeg, ExoPlayer, AVFoundation
- Sharing: WebRTC, mDNS
- Build: Docker, Fastlane
MusicX/
├── apps/
│ ├── mobile/ # React Native (Android/iOS)
│ ├── desktop/ # Electron (Linux/macOS/Windows)
│ └── shared/ # Shared components, utils, hooks
├── server/ # Optional backend for sync & remote share
├── tools/
│ └── build-scripts/ # Dockerized scripts to build all targets
├── export/ # Final builds (.apk, .exe, .dmg, .AppImage)
└── README.md
- Install dependencies:
sudo apt update
sudo apt install nodejs npm git docker.io openjdk-11-jdk -y
sudo npm install -g yarn
- Clone the repository:
git clone https://github.com/yourusername/music-x.git
cd music-x
- Install project dependencies:
yarn install
- Start development:
# For mobile
cd apps/mobile
yarn start
# For desktop
cd apps/desktop
yarn start
Use the provided build scripts in tools/build-scripts/
to build for different platforms.
MIT