52 lines
963 B
YAML
52 lines
963 B
YAML
version: "3"
|
|
|
|
vars:
|
|
APP_NAME: voicepaste
|
|
VERSION:
|
|
sh: git describe --tags --always --dirty 2>/dev/null || echo "dev"
|
|
EXE:
|
|
sh: go env GOEXE
|
|
|
|
tasks:
|
|
default:
|
|
desc: Build for current platform
|
|
deps: [build:frontend]
|
|
cmds:
|
|
- go build -ldflags "-s -w -X main.version={{.VERSION}}" -o dist/{{.APP_NAME}}{{.EXE}} .
|
|
|
|
build:frontend:
|
|
desc: Build frontend with Vite
|
|
dir: web
|
|
sources:
|
|
- "*.html"
|
|
- "*.js"
|
|
- "*.css"
|
|
- "public/**/*"
|
|
- vite.config.js
|
|
generates:
|
|
- dist/**/*
|
|
cmds:
|
|
- bun install --frozen-lockfile
|
|
- bun run build
|
|
|
|
run:
|
|
desc: Build and run
|
|
deps: [default]
|
|
cmds:
|
|
- ./dist/{{.APP_NAME}}{{.EXE}}
|
|
|
|
dev:
|
|
desc: Run with go run (skip frontend build)
|
|
cmds:
|
|
- go run .
|
|
|
|
clean:
|
|
desc: Clean build artifacts
|
|
cmds:
|
|
- rm -rf dist/ web/dist web/node_modules
|
|
|
|
tidy:
|
|
desc: Tidy Go modules
|
|
cmds:
|
|
- go mod tidy
|