Files
voicebox/landing
James PineandClaude Opus 4.7 13924741a7 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]>
2026-04-18 23:09:03 -07:00
..
2026-01-25 13:40:18 -08:00
2026-01-25 13:40:18 -08:00
2026-04-18 15:15:58 -07:00
2026-01-25 13:40:18 -08:00

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

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

Edit src/lib/constants.ts to update:

  • LATEST_VERSION - Current release version
  • DOWNLOAD_LINKS - GitHub release download URLs
  • GITHUB_REPO - Repository URL

Update GitHub Username

Replace USERNAME in src/lib/constants.ts with your actual GitHub username.

Deployment to Railway

  1. Connect your GitHub repository to Railway
  2. Railway will auto-detect nixpacks.toml
  3. Set root directory to landing/
  4. Railway will automatically:
    • Install dependencies with bun install
    • Build with bun run build
    • Start with bun run start
  5. Configure custom domain voicebox.sh in 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