Moderated guest music requests for house-party mode, backed by Jellyfin.
2.4K
A Coral ecosystem module — built on TanStack Start, Tailwind v4, and the Jellyfin API.
pnpm install
cp .env.example .env
# Fill in your Jellyfin URL, API key, and user ID
pnpm dev
App runs at http://localhost:3000.
| Tool | Purpose |
|---|---|
| TanStack Start | Full-stack React framework |
| TanStack Router | Type-safe file-based routing |
| TanStack Query | Server state management |
| Tailwind v4 | Styling |
| Biome | Linting & formatting |
| @get-coral/jellyfin | Jellyfin API client |
| Vitest | Testing |
pnpm dev # Start dev server on :3000
pnpm build # Production build
pnpm start # Run production server
pnpm typecheck # TypeScript check
pnpm check # Biome lint + format check
pnpm lint # Biome lint with auto-fix
pnpm test # Run tests
# Pull the published image
docker pull getcoral/encore:latest
# Or build it yourself
docker build -t encore .
# Run
docker run -p 3000:3000 \
-e JELLYFIN_URL=http://your-nas:8096 \
-e JELLYFIN_API_KEY=your-key \
-e JELLYFIN_USER_ID=your-user-id \
getcoral/encore:latest
Published automatically to getcoral/encore on Docker Hub on every release via GitHub Actions.
| Workflow | Trigger | What it does |
|---|---|---|
ci.yml | Every PR + push to main | Typecheck, lint, test, build, Docker build check |
docker-publish.yml | Push to main + version tags | Publishes to GHCR |
release-please.yml | Push to main | Opens release PR, publishes Docker on merge |
Releases are fully automated via Release Please. Use conventional commits:
| Commit prefix | Version bump |
|---|---|
feat: | Minor |
fix: | Patch |
feat!: / fix!: | Major |
chore:, docs: | No bump |
This module is part of the Coral ecosystem. See the contributing guide before opening PRs.
Content type
Image
Digest
sha256:15f629310…
Size
104.7 MB
Last updated
16 days ago
docker pull getcoral/encore