Setup Guide

Get Fine Print running in minutes.

Prerequisites

Development

# Clone the repo git clone https://github.com/scout-kit/fine-print.git cd fine-print # Install Go and Node dependencies make deps # Run in dev mode (port 8080, no hotspot) make dev # With HTTPS for camera access FINEPRINT_TLS=1 FINEPRINT_PORT=8443 make dev

Production Build

# Build frontend + Go binary make all # Output: bin/fine-print (single binary) ./bin/fine-print -config config.yml

Raspberry Pi

# Cross-compile for ARM64 make build-pi # Copy to Pi and run scp bin/fine-print-linux-arm64 pi@raspberrypi:~/fine-print ssh pi@raspberrypi ./fine-print -config config.yml

Service Installation

Install as a system service that starts on boot:

# Build first make all # Install service (detects macOS/Linux) sudo ./scripts/install-service.sh

This installs the binary to /usr/local/bin/fine-print, creates config at /etc/fine-print/config.yml, and sets up launchd (macOS) or systemd (Linux).

Configuration

Copy the example config and customize:

cp configs/fine-print.example.yml config.yml
SettingDefaultDescription
server.port80HTTP port
database.driversqlitesqlite or mysql
admin.passwordchangemeInitial admin password
tls.enabledfalseAuto-generate HTTPS cert
printer.media4x6Print media size
hotspot.ssidFine PrintWiFi network name

Environment variables override config: FINEPRINT_DEV=1, FINEPRINT_PORT=8080, FINEPRINT_TLS=1, etc.

First Run

  1. Start the app and open it in a browser
  2. Go to /admin and log in with the default password
  3. Go to Settings — detect and enable a printer
  4. Go to Projects — create a project (standard or photo booth)
  5. Configure the project template (overlays, text, colors)
  6. Share the project link or QR code with guests