Quick Start

PicFast runs in a single Docker container. You just need a PostgreSQL database and the prebuilt image from Docker Hub.

Prerequisites

  • Docker
  • A PostgreSQL instance (local, remote, or Docker)
  • A domain name (for production) or just use localhost for testing

1. Start everything

Three commands: create a Docker network, start PostgreSQL, start PicFast.

docker network create picfast-net

docker run -d --name picfast-db --network picfast-net \
  -e POSTGRES_PASSWORD=devonly \
  -v picfast-pgdata:/var/lib/postgresql/data \
  postgres:16-alpine

docker run -d --name picfast --network picfast-net -p 18080:8080 \
  -e PICFAST_DATABASE_URL='postgres://postgres:devonly@picfast-db:5432/postgres?sslmode=disable' \
  -e PICFAST_JWT_SECRET='change-me-in-production' \
  -e PICFAST_SERVER_BASE_URL='http://localhost:18080' \
  -v picfast-uploads:/app/data/uploads \
  -v picfast-thumbnails:/app/data/thumbnails \
  xbeta/picfast:latest

Available image tags: latest, version tags (vX.Y.Z), and commit-traceable tags (sha-<commit>). See Docker Hub for the full list.

2. Initial setup

Open http://localhost:18080 in your browser. A guided setup wizard helps you create your first admin account.

For headless (non-browser) deployments, set these additional environment variables to auto-create the admin and skip the wizard:

PICFAST_APP_ADMIN_EMAIL=admin@example.com
PICFAST_APP_ADMIN_PASSWORD=your-admin-password

3. Upload your first image

Log into the web UI and drag-drop a file, or use the API:

curl -X POST http://localhost:18080/api/v1/images \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -F "file=@image.png"

For AI agent integration, see MCP Integration. For ShareX one-click setup, see ShareX Integration.

Next steps

Development setup

If you want to build from source or contribute to PicFast:

  • Prerequisites: Go 1.26+, Node 20+, pnpm, PostgreSQL 16, Git
  • Start services: make docker-up (launches PostgreSQL + Mailpit)
  • Run backend: go run ./cmd/picfast
  • Run frontend: cd web && pnpm install && pnpm dev

Database migrations run automatically on startup. For bundled serving: cd web && pnpm build && go run ./cmd/picfast.

See the GitHub README for full development instructions.