* fix(landing): use qwen_custom_voice in API example (instruct is CustomVoice-only)
The curl snippet showed engine: "qwen" alongside an instruct field, but base
Qwen3-TTS has no instruct path — that's a Qwen CustomVoice feature.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* fix(landing): use a realistic UUID for profile_id in API example
Profile IDs are str(uuid.uuid4()), not slugs (see backend/services/profiles.py:175).
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* feat(landing): add polished /download page — no more dumping users on GitHub
Users were clicking download, landing on the GitHub releases page, and filing
confused comments along the lines of "I ended up on some blog site called
GitHub." We now route every download CTA through a dedicated /download page
that auto-triggers the platform-specific download and gives users a polished
post-click experience with donate + docs + AI help prompts.
- New /download page:
- Big app logo + "Your download has started" messaging.
- Auto-detects platform from ?platform=X or navigator.userAgent.
- Programmatically clicks a hidden anchor to trigger the file download
without leaving the page.
- Platform-specific buttons as a visible fallback for "download not
working" / manual-pick.
- Personal donate spiel + Buy Me a Coffee button.
- Resources grid: docs, DeepWiki ("got questions? ask AI"), GitHub.
- Landing page download section cards now link to /download?platform=X
instead of the asset URL directly.
- /download/[platform] (used by README/docs links) now redirects to the
/download page rather than straight to the asset or to GitHub on error.
- Drops unused downloadLinks state from the landing page.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* fix(landing): use official platform brand icons via simple-icons
The hand-rolled Linux SVG path wasn't actually Tux — it was a symmetric
placeholder shape. Apple/Windows were close but not canonical either.
- Apple + Linux: pulled from @icons-pack/react-simple-icons (SiApple, SiLinux).
- Windows: simple-icons drops the Microsoft mark over trademark policy, so
the Windows 11 flag is inlined from Microsoft's public brand guidance.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* fix(landing): route Download CTAs to /download page, not the section anchor
Hero CTA, navbar link, and footer link were all scrolling to #download
(the section at the bottom of the page) instead of going to the new
/download page that triggers the actual download.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* chore(landing): run dev server on Node instead of Bun runtime
Bun runtime + Next 16 Turbopack dev server intermittently trips a
JavaScriptCore allocator panic ('pas panic: deallocation did fail ...
Alloc bit not set') after a few requests. Dropping --bun keeps Bun as
the package manager but runs next dev on Node, which is stable.
Build + start keep --bun since one-shot invocations don't exhibit the
allocator drift.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* fix(landing): route Linux users to /linux-install instead of attempting download
No prebuilt Linux binary exists yet (see /linux-install for build-from-source
instructions). The /download page previously treated Linux like the other
platforms — auto-triggering a non-existent AppImage and offering a dead
manual button.
- /download page: if platform resolves to 'linux' via ?platform or UA detect,
window.location.replace('/linux-install') — never try to auto-download.
- Manual Linux card: label changed to "Build from source" and links to
/linux-install (no download attribute, no asset URL).
- /download/linux pretty URL: 307s straight to /linux-install.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* docs: consolidate troubleshooting into the MDX docs site + status updates
- Delete docs/TROUBLESHOOTING.md; the canonical troubleshooting guide now
lives under docs/content/docs/overview/troubleshooting.mdx so it's served
from docs.voicebox.sh alongside the rest of the docs.
- CONTRIBUTING.md + README.md: repoint "Troubleshooting" references to the
new MDX path. README gets a top-level callout so users hit the guide
before filing an issue.
- PROJECT_STATUS.md: refresh issue/PR counts, document the flash-attn
warning (cosmetic on all platforms; CUDA-only, fallback is PyTorch SDPA
which is near-FA2 on Ampere+) with per-platform context + community
Windows wheels + SageAttention/xformers alternatives, add WebAudio
audio-session bug note (tracked separately in PR #486), and expand the
Qwen 0.6B→1.7B MLX fallback explanation for triage.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
* fix(landing): address PR #487 review feedback
- Preserve canonical camelCase platform aliases (macArm, macIntel) in the
/download/[platform] redirect so those URLs don't lose their platform param.
- Add accessible title + role="img" to the inline Windows SVG so it passes
Biome's a11y rule and announces to screen readers.
- On /api/releases fetch failure, show an explicit error state with a single
intentional link to GitHub releases — no more silent GitHub fallback or
disabled-button UX lie. Keeps normies off GitHub unless they opt in.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
New Spacedrive-inspired landing page with dark warm color system, glassmorphic navbar, feature cards with animated illustrations, and an interactive ControlUI mockup that cycles through voice generations with real audio playback via WaveSurfer.
The ControlUI demo script is fully data-driven - profiles, generation text, audio samples, and effects are all configurable from a single DEMO_SCRIPT array.
Includes 6 real voice samples (Jarvis, Morgan Freeman, Sam Altman, Samuel L. Jackson, Linus Tech Tips, Fireship) converted to webm opus.
- Created a new landing page using Next.js 16, featuring a modern design with Tailwind CSS.
- Implemented essential components including Header, Footer, and DownloadSection for user navigation and download options.
- Configured Tailwind CSS and PostCSS for styling, and set up TypeScript for type safety.
- Added a README with setup instructions, project structure, and deployment guidelines.
- Integrated GitHub links for easy access to the repository and releases.
- Established a consistent UI with reusable components and responsive design.