mirror of
https://github.com/jamiepine/voicebox.git
synced 2026-09-18 14:20:42 -07:00
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]>
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