Skip to content

Refactor album upload to multi-step workflow#364

Open
magent-cryptograss wants to merge 4 commits intocryptograss:mainfrom
magent-cryptograss:multi-step-album-upload
Open

Refactor album upload to multi-step workflow#364
magent-cryptograss wants to merge 4 commits intocryptograss:mainfrom
magent-cryptograss:multi-step-album-upload

Conversation

@magent-cryptograss
Copy link
Copy Markdown
Contributor

Summary

Replaces single-step upload+transcode+pin with a multi-step workflow:

  1. Connect wallet - Authorization step
  2. Upload files - Server creates draft, analyzes audio metadata
  3. Review & edit - Edit track titles, reorder with drag-and-drop, enter album info
  4. Finalize - Transcode + pin with SSE progress streaming

Features

  • Visual step indicator showing progress through the 4-step workflow
  • Inline track title editing - click to edit, Enter to save
  • Drag-and-drop track reordering
  • Page refresh recovery - localStorage + server state ensures work isn't lost
  • Draft info display - shows draft ID and expiration time
  • Dual format result - shows both FLAC and OGG directories in final album

UI Changes

  • Step indicator at top with numbered steps and progress highlighting
  • Separate cards for each step (only current step visible)
  • Review step shows analyzed track metadata (format, duration, size)
  • Finalize step shows real-time progress with SSE events
  • Result section shows album structure diagram

Backend Dependency

Requires the new /draft-album endpoints in delivery-kid pinning service:

Test plan

  • Connect wallet → advances to upload step
  • Drop files → uploads, shows review with analyzed metadata
  • Edit track title → inline editing works
  • Drag track → reorders, updates numbering
  • Refresh page → draft recovered from localStorage + server
  • Click Finalize → shows progress, completes with CID
  • Upload another → resets state for new upload

jMyles added 4 commits March 6, 2026 16:05
Replaces single-step upload+transcode+pin with:
1. Connect wallet
2. Upload files → server creates draft, analyzes audio
3. Review & edit track titles, album info, drag to reorder
4. Finalize → transcode + pin with SSE progress

Features:
- Visual step indicator showing progress through workflow
- Editable track titles with inline editing
- Drag-and-drop track reordering
- localStorage + server state for page refresh recovery
- Draft info display (ID, expiration time)
- Dual format result (FLAC + OGG directories)

Works with new /draft-album endpoints in delivery-kid pinning service.
- Add expandable rows in track listing with tags textarea per track
- Parse KEY=VALUE tags and send per-track in finalize request
- Remove album-level tags textarea (now per-track)
- Store per-track tags in localStorage for draft recovery
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants