- Add download table for macOS and Windows installers in README
- Add desktop app build instructions to Quick Start section
- Move electron-builder output to release/ to avoid Vite dist conflicts
- Add electron:build:all script to build all platforms in one pass
- Add electron/main.js as the Electron main process
- Configure electron-builder for macOS (x64 + arm64 DMG) and Windows (x64 + arm64 NSIS installer)
- Add build scripts: electron:build (mac), electron:build:win (windows)
- Set vite base to './' for file:// protocol compatibility in Electron
- Add mode control (fun/normal/spicy) to VideoStudio for models that support it; wired through generateVideo and generateI2V in muapi.js
- Add getModesForModel helper to models.js
- Header key button now opens SettingsModal to update API key in-place instead of wiping and reloading
- Fix silent failures: catch block no longer overridden by finally; errors now display for 4s before resetting
- Restore hero section on generation failure so the page doesn't look broken
- Extend video polling timeout from 4 min to 30 min (900 attempts)
- Add pending job recovery: save requestId to localStorage on submit, resume polling on studio load with a live banner showing progress
- Add onRequestId callback to all muapi generate methods (generateImage, generateI2I, generateVideo, generateI2V, processV2V)
- New pendingJobs.js utility for CRUD operations on pending jobs in localStorage
- Add seedance-v2.0-i2v to i2vModels with images_list field, aspect ratio, duration (5/10/15s), and quality controls
- Add seedance-v2.0-extend to t2vModels for seamlessly continuing Seedance 2.0 generations
- Auto-store request_id after each Seedance 2.0 t2v/i2v generation
- Show Extend button on canvas after Seedance 2.0 generation; clicking it pre-selects the extend model and auto-passes stored request_id
- Add quality dropdown control to VideoStudio for models that support it
- Show extend banner when extend model is active; optional prompt guides the continuation
- Restore extend context when browsing Seedance 2.0 history entries
- Make prompt optional in muapi.generateVideo and forward request_id for extend endpoint
- Update README with new models and features
Integrates ByteDance's Seedance v2.0 into Video Studio with support for
aspect ratios (16:9, 9:16, 4:3, 3:4), durations (5/10/15s), and quality
(basic/high). Updates README to reflect the new model.
- Add nano-banana-2 and seedream-5.0 to t2i models
- Add nano-banana-2-edit and seedream-5.0-edit to i2i models
- Add maxImages to 22 i2i models based on schema maxItems (up to 14 for nano-banana-2-edit)
- UploadPicker: multi-select mode with order badges, batch file upload, count/+ trigger badge
- ImageStudio: track uploadedImageUrls[], setMaxImages() on model switch, pass images_list to API
- muapi: pass quality and images_list array params in generateImage/generateI2I
- Expose quality/resolution controls for t2i models (nano-banana-2, seedream-5.0)
- Update README with new models, multi-image picker docs, and comparison table
- Add ImageStudio component with prompt input, model/AR/resolution pickers
- Integrate Muapi API client with x-api-key auth and result polling
- Add generation history sidebar with thumbnails and download
- Add AuthModal and SettingsModal for API key management
- Configure Vite proxy for CORS-free API access in development
- Add model definitions with endpoint mappings from schema data
- Add Tailwind CSS styling with dark theme and glassmorphism design
- Add Header component with settings and logout controls