Backend API for Formify, a form builder platform with support for:
- form creation and publishing
- response collection
- Google OAuth authentication
- optional Google Sheets integration
- file uploads
- Go (Echo v5)
- PostgreSQL
- sqlc for type-safe query generation
- golang-migrate for DB migrations
- Zap for structured logging
- Clone and install dependencies:
go mod download- Configure environment:
cp .env.example .env- Start local database:
make db-up- Run migrations:
make migrate-up- Start API:
make runServer default URL: http://localhost:1323
make run- run APImake dev- run with hot reload (requiresair)make build- build binary tobin/formify-servermake test- run testsmake lint- run golangci-lintmake format- format codemake sqlc- regenerate DB query codemake migrate-up/make migrate-down/make migrate-status
To run the full stack (app + migrate + db):
docker compose up --buildThis uses docker-compose.yml and exposes API on port 8080.
docs/setup.md- setup and local developmentdocs/api.md- API endpoints and auth modeldocs/database.md- schema and migrationsdocs/logging.md- structured logging
See CHANGELOG.md for release notes and project history.