https://github.com/ejfox/music-player
https://github.com/ejfox/music-player
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ejfox/music-player
- Owner: ejfox
- Created: 2025-09-23T13:58:12.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2026-01-24T13:11:30.000Z (5 months ago)
- Last Synced: 2026-01-25T01:07:21.607Z (5 months ago)
- Language: TypeScript
- Size: 126 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# music
A minimal music player for Cloudflare R2-hosted MP3s. Built for [smallweb](https://smallweb.run).
Live: https://music.ejfox.com
## Features
- Lists MP3s from R2 bucket
- Real-time audio visualizer
- Unicode waveform display (crowdsourced from clients)
- Keyboard shortcuts: `space` play/pause, `n` next, `p` prev, `s` shuffle
- Shareable track URLs
## Setup
```bash
cp .env.example .env
# Edit .env with your R2 credentials
```
## Environment Variables
| Variable | Description |
|----------|-------------|
| `R2_ACCOUNT_ID` | Cloudflare account ID |
| `R2_ACCESS_KEY_ID` | R2 API access key |
| `R2_SECRET_ACCESS_KEY` | R2 API secret key |
| `R2_BUCKET_NAME` | R2 bucket name (default: `ejfox-personal`) |
## Run
```bash
deno run --allow-net --allow-env --allow-read --allow-write main.ts
```
Or with smallweb, just drop in a folder and set env vars in `.env`.