music-web/README.md
Jarian Cottingham bc40a19c49 Initial commit: web frontend
React web app for the self-hosted music streaming project,
carved out from the music-app monorepo. Uses @music-app/shared
for shared types and utilities.
2026-08-21 18:44:05 +00:00

37 lines
1.2 KiB
Markdown

# Music App — Web
React web client for the Music App streaming project: player UI, mood radio, lofi channels, SharePlay, search, and settings. Built with Vite, React 18, Tailwind CSS, and Radix UI.
Part of the Music App project:
| Repo | What it is |
|------|------------|
| [music-app](https://git.jarianc.com/jarianc/music-app) | FastAPI backend (server) |
| [music-mobile](https://git.jarianc.com/jarianc/music-mobile) | React Native mobile app (Expo) |
## Quick Start
```bash
npm install
npm run dev
```
Dev server on `http://localhost:5173`. Point it at a running music-app server with `VITE_API_URL` (default `http://localhost:8000`).
## Project Structure
- `web/` — React app (Vite + Tailwind): screens, player, SharePlay UI
- `shared/` — Shared TypeScript types and API client (`@music-app/shared` workspace package)
- `e2e/` — Playwright end-to-end specs
- `playwright.config.ts` — Playwright config (chromium)
## Scripts
| Command | What it does |
|---------|--------------|
| `npm run dev` | Vite dev server |
| `npm run build` | Typecheck + production build |
| `npm run typecheck` | `tsc --noEmit` across workspaces |
| `npm run lint` | ESLint across workspaces |
| `npm run test:e2e` | Playwright E2E suite (server must be running) |