Merged
Conversation
…de switching - Add React/Vite UI (ui/), API layer (api/), tests (tests/) - Generate: task types (text2music, cover, repaint, extend, audio2audio), reference/source audio, upload - CreatePanel: InfoTooltip, audio header with track name, library/upload flow, sliders for influence - Backend: upload-audio, reference library, job queue, map params to generate_ace - Build: scripts/build_ui.sh (Bun), build_local.sh uses new UI, CDMF.spec bundles ui/dist - Docs: NEW_UI_IMPLEMENTATION_PLAN, API audit, experimental exploration Co-authored-by: Cursor <cursoragent@cursor.com>
…elease Co-authored-by: Cursor <cursoragent@cursor.com>
- Backend: producer tags (stems, voice_cloning, midi, generation) in track metadata - Backend: preferences API (GET/PATCH /api/preferences) and get_output_dir() from config - Backend: all modules use config output_dir; songs/tracks/list serve from configured dir - UI: preferencesApi; panels load/save preferences and call onTracksUpdated on success - UI: Settings modal output directory; Create and tools send outputDir from preferences - UI: AceForge branding (logo, title AceForge - AI Music Workstation) in index, Sidebar, UsernameModal, Settings, Share, SongProfile - New tool panels: TrainingPanel, StemSplittingPanel, VoiceCloningPanel, MidiPanel (with model download and preferences) Co-authored-by: Cursor <cursoragent@cursor.com>
- Cover/Audio2Audio: ensure style (caption) and lyrics used correctly; fold keyScale, timeSignature, vocalLanguage into style prompt when set - Custom form: reorder to Title, Style, Lyrics, Vocal Language, Audio, Music Params, Advanced; default batch size 1; remove Instruction field and amber callout; add Instrumental toggle in Lyrics section - Webview: apply 80% zoom via run_js after load (aceforge_app + music_forge_ui) - Voice cloning: track model download in UI (status/ensure API, progress) - Stem splitting: GPU (MPS) and metadata resilience fixes - Docs: ACE-Step Cover key params, USAGE.md Cover section; remove unused instruction from CreatePanel Co-authored-by: Cursor <cursoragent@cursor.com>
…itching Reference/Cover Co-authored-by: Cursor <cursoragent@cursor.com>
- AuthContext: always provide LOCAL_TOKEN so UI never blocks on sign-in; logout resets to local user - RightSidebar: remove 'Please sign in to rename' gate; rename works without login - Window title: use 'AceForge' only in pywebview, index.html, SongProfile, SettingsModal Co-authored-by: Cursor <cursoragent@cursor.com>
…ar button - Sidebar: add Settings (gear) button at bottom to open Settings modal - Settings modal: Paths section (models folder + output dir), Display (UI zoom 80–125%) - Backend: preferences PATCH sets HF_HOME when models_folder changes; zoom read from config at startup - api.ts: AppPreferences.ui_zoom Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…e env vars - api/generate: guidance_scale 7.0 when reference audio present; ref_audio_strength default 0.8 for cover/retake; comments reference ACE-Step-INFERENCE.md - generate_ace: repaint_end < 0 => use target duration (end of audio) - build_local.sh: ACEFORGE_QUICK_BUILD, ACEFORGE_SKIP_UI_BUILD, ACEFORGE_SKIP_PIP for faster rebuilds Co-authored-by: Cursor <cursoragent@cursor.com>
- Add --train entry point in aceforge_app: frozen binary runs as trainer (no GUI) - cdmf_training: when frozen, spawn same binary with --train + args instead of blocking - cdmf_trainer_parser: parser-only module for --train --help without heavy deps in bundle - aceforge_app: --train --help uses parser only so bundle test passes without diffusers - Add test_train_from_bundle.sh and CI step to verify --train from bundle Co-authored-by: Cursor <cursoragent@cursor.com>
- api/generate: lora_adapters endpoint, pass loraNameOrPath/loraWeight to generation; defaults steps 65, guidance 4.0 - cdmf_pipeline_ace_step: shift parameter (default 6.0) for scheduler - generate_ace: pass shift 6.0 into pipeline - CreatePanel: LoRA adapter selector and weight - TrainingPanel: copy noting LoRA appears in Create after training - api.ts / types.ts: LoRA types and getLoraAdapters() Co-authored-by: Cursor <cursoragent@cursor.com>
- Add POST /api/generate/cancel/<job_id> for queued and running jobs; cooperative cancellation in pipeline (cdmf_generation_job.GenerationCancelled, cancel_check in diffusion loops) - api/generate: _current_job_id, _cancel_requested, refreshSongsList on job success already present; add handleRefreshLibrary - Library refresh: refetch on navigate to Library, every 20s on Library/Create, on tab focus; Refresh button in LibraryView and CreatePanel (Library & uploads) - API docs: cancel endpoint, lora_adapters, cancel response; ui/services/api: cancelJob; tests: cancel 404 and cancel queued - README: minor fix Co-authored-by: Cursor <cursoragent@cursor.com>
Move handleRefreshLibrary and refresh useEffects to after refreshSongsList definition. Using refreshSongsList before it was defined caused ReferenceError on first render (temporal dead zone) and blank UI. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adding a Suno-like React UI forked and extended from Ace-Step UI (MIT)