feat: web UI + HTTP server + Electron shell #10

Merged
david merged 4 commits from wip into main 2026-06-22 02:48:06 +00:00
Owner

Summary

Adds a web frontend, REST API server, and Electron desktop app wrapper.

Changes

  • HTTP server (fetch serve) — embedded web UI via embed.FS, REST API with SSE download progress
  • Web UI — vanilla JS/CSS, search archive.org, download queue with progress bars, WAV extraction controls
  • Electron app — spawns Go server as sidecar, electron-builder config for macOS .app bundle
  • Toolchain — mise.toml (go 1.26, node 22), docker compose up, Makefile with electron targets
  • Docs — README.md, AGENTS.md

Related Issues

Refs #1, #9

## Summary Adds a web frontend, REST API server, and Electron desktop app wrapper. ### Changes - **HTTP server** (`fetch serve`) — embedded web UI via embed.FS, REST API with SSE download progress - **Web UI** — vanilla JS/CSS, search archive.org, download queue with progress bars, WAV extraction controls - **Electron app** — spawns Go server as sidecar, electron-builder config for macOS .app bundle - **Toolchain** — mise.toml (go 1.26, node 22), docker compose up, Makefile with electron targets - **Docs** — README.md, AGENTS.md ### Related Issues Refs #1, #9
david added 4 commits 2026-06-22 02:47:43 +00:00
- serve.go: embedded web UI (embed.FS), REST API endpoints for
  search, list, download (SSE progress), and WAV extraction
- main.go: added serve subcommand and flag registration
- web/ui: vanilla JS frontend with search cards, download queue,
  extract controls; dark theme, zero dependencies
- electron/: Electron wrapper that spawns fetch serve as sidecar,
  reads port from stdout, creates BrowserWindow; electron-builder
  config for macOS .app bundle with akaiutil + script as resources

Refs #1, #9
- Dockerfile: updated to serve mode with web/ embed, expose 8080
- docker-compose.yml: new, maps :8080 and output volume
- Makefile: added serve, akaiutil, electron-* targets
- mise.toml: new, go 1.26 + node 22, all build/run tasks
- .gitignore: exclude built akaiutil binary
- README.md: project overview, quickstart (mise/docker/build),
  architecture diagram, feature roadmap linking to issues #1-#9
- AGENTS.md: development guide covering toolchain, key patterns,
  API conventions, akaiutil integration, formatting rules
david merged commit 649a73984d into main 2026-06-22 02:48:06 +00:00
david deleted branch wip 2026-06-22 02:48:06 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: david/akai-utils#10