Monorepo containing:
- Backend API (Go + Gin + MySQL)
- Admin UI (React + Vite + TypeScript + Tailwind + shadcn/ui)
- Form Renderer (React + Vite)
- Renderer package (schema-driven React renderer)
- Start MySQL:
docker-compose up -d- Migrate dev DB:
migrate -path db/migrations -database "mysql://formdev:formdevpw@tcp(localhost:3307)/formdev" up- Run API (dev env):
cd apps/api
ENVFILE=.env.local go run ./cmd/server- Admin UI:
pnpm install
pnpm dev:admin- Form Renderer (optional):
pnpm dev:formThis project includes Dockerfiles and deployment scripts for AWS ECR.
Quick Start:
# Set AWS credentials
export AWS_ACCESS_KEY_ID=your-access-key
export AWS_SECRET_ACCESS_KEY=your-secret-key
export AWS_DEFAULT_REGION=eu-west-1
# Set ECR configuration
export ECR_REGISTRY=640249400316.dkr.ecr.eu-west-1.amazonaws.com
export REPO_PREFIX=sc_attribute_form_generator
export TAG=V1
# Build and push images (amd64 architecture)
./scripts/build-and-push-production.shImages pushed to:
640249400316.dkr.ecr.eu-west-1.amazonaws.com/sc_attribute_form_generator:api-V1640249400316.dkr.ecr.eu-west-1.amazonaws.com/sc_attribute_form_generator:admin-V1640249400316.dkr.ecr.eu-west-1.amazonaws.com/sc_attribute_form_generator:form-V1
Documentation:
- See
DEPLOYMENT.mdfor detailed deployment instructions - See
CREATE_FORM_CURL.mdfor API usage examples - See
USER_GUIDE.mdfor user documentation
apps/api/- Go backend API serverapps/admin/- Admin UI for managing formsapps/form/- Form renderer for public formspackages/renderer/- Shared React form renderer packagedb/migrations/- Database migrationsscripts/- Build and deployment scripts
See db/migrations for schema and seeds. See example curl commands in the specification to exercise endpoints.