HyperGo
GitHubGet the code

Documentation

How to set up and run HyperGo locally or with Docker.

Quick Start (Docker)
  1. Clone the repo:
    git clone https://github.com/geeth24/hypergo.git cd hypergo
  2. Start services:
    docker compose up -d
  3. Access:
    • Frontend: http://localhost:3002
    • API/Redirect: http://localhost
Local Development

Server (Go)

cd server go run ./cmd/hypergo/main.go

Client (Next.js)

cd client pnpm install pnpm dev

Set NEXT_PUBLIC_API_URL to your API, e.g. http://localhost:8079.

Environment Variables

Server

  • PORT (default: 8079)
  • DATABASE_URL (default: postgres://postgres:postgres@localhost:5432/hypergo)
  • REDIS_URL (default: localhost:6379)
  • REDIS_PASSWORD (default: empty)
  • REDIS_DB (default: 0)

Client

  • NEXT_PUBLIC_API_URL – API base URL
API Overview
  • GET /api/health — Health check
  • GET /api/shortcuts — List all shortcuts
  • POST /api/shortcuts — Create a shortcut
  • GET /api/shortcuts/:shortcode — Shortcut details
  • PUT /api/shortcuts/:shortcode — Update URL
  • POST /api/shortcuts/bulk — Details in bulk
  • GET /:shortcode — Redirects and increments clicks
Deploy

Use Docker Compose or your favorite platform. Ensure the client env NEXT_PUBLIC_API_URL points to your API host (e.g., LAN IP).

Repository: geeth24/hypergo

Optional: Add go host for easy access

Map go to your server IP so you can use URLs like http://go/your-shortcode.

macOS/Linux

From the repo root, run (may prompt for sudo):

./add-go-host.sh

Windows

Open Command Prompt as Administrator and run:

add-go-host.bat

By default these scripts add 192.168.1.71 go. Update the IP in the scripts to match your server if different.

For more details, see the README in the repository.