mirror of
https://github.com/jamiepine/voicebox.git
synced 2026-09-15 21:00:42 -07:00
- /llm/generate's "model is downloading" branch was raising HTTPException(202, detail={...}), which wraps the payload in {"detail": ...} and forces clients to parse a success status as if it were an error. Switched to JSONResponse so the payload sits at the top level.
- The landing page's "Language Models" card advertised "Qwen 3.5" with sizes 4B/2B/0.8B; we ship Qwen3 at 0.6B/1.7B/4B. Aligned to what's actually in the binary.
- ProfileForm's discard-draft button reset the form without touching `personality` or `avatarFile`, so stale persona text and an attached avatar would survive the discard. The other three resets in the file already include both fields — this brings the discard path in line.
Voicebox Landing Page
Landing page for voicebox.sh - a modern Next.js 16 application.
Tech Stack
- Next.js 16 with App Router
- Bun for package management
- Tailwind CSS with shadcn/ui components
- TypeScript with strict mode
- Railway deployment ready
Getting Started
Prerequisites
- Bun installed (bun.sh)
Installation
cd landing
bun install
Development
bun run dev
Open http://localhost:3000 to view the landing page.
Build
bun run build
Production
bun run start
Configuration
Update Download Links
Edit src/lib/constants.ts to update:
LATEST_VERSION- Current release versionDOWNLOAD_LINKS- GitHub release download URLsGITHUB_REPO- Repository URL
Update GitHub Username
Replace USERNAME in src/lib/constants.ts with your actual GitHub username.
Deployment to Railway
- Connect your GitHub repository to Railway
- Railway will auto-detect
nixpacks.toml - Set root directory to
landing/ - Railway will automatically:
- Install dependencies with
bun install - Build with
bun run build - Start with
bun run start
- Install dependencies with
- Configure custom domain
voicebox.shin Railway settings
Project Structure
landing/
├── src/
│ ├── app/
│ │ ├── layout.tsx # Root layout with metadata
│ │ ├── page.tsx # Landing page
│ │ └── globals.css # Global styles
│ ├── components/
│ │ ├── Header.tsx # Top navigation
│ │ ├── Footer.tsx # Footer
│ │ ├── DownloadSection.tsx # Download buttons
│ │ └── ui/ # shadcn/ui components
│ └── lib/
│ ├── utils.ts # Utility functions
│ └── constants.ts # App constants
├── public/
│ └── voicebox-logo.png # Logo asset
└── nixpacks.toml # Railway deployment config
Features
- Responsive design (mobile-first)
- Dark mode by default
- SEO optimized metadata
- Download links for Mac, Windows, Linux
- Feature showcase
- Platform highlights
- GitHub integration