foundary-test-1770784989/README.md
rdev-worker 74d614ee35
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
build: Set up the monorepo workspace. Ensure the root README describes a pro...
2026-02-11 04:46:05 +00:00

3.5 KiB

foundary-test-1770784989

A product studio for conversational product development. Build, iterate, and ship products through natural conversation — from idea to deployed software in a single workflow.

Foundary Studio combines Go backend services, TypeScript frontends, and shared libraries in a polyglot monorepo, orchestrated by AI-assisted development tooling that turns conversations into working code.

Quickstart

# Clone the repo
git clone https://git.threesix.ai/jordan/foundary-test-1770784989.git
cd foundary-test-1770784989

# Install dependencies
./scripts/install.sh

# Start local development (PostgreSQL, Redis, all services)
./scripts/dev.sh

Architecture

foundary-test-1770784989/
├── services/     # Go API services (port 8001+)
├── workers/      # Go background workers
├── apps/         # TypeScript frontends (port 3001+)
├── cli/          # Go CLI tools
├── packages/     # Shared TypeScript packages
│   ├── ui/       # Headless UI component library
│   ├── layout/   # Dashboard shell and navigation
│   ├── auth/     # Auth provider and protected routes
│   ├── api-client/ # Generated typed API client
│   └── logger/   # Structured HTTP/console logging
├── pkg/          # Shared Go packages
│   ├── app/      # Service bootstrapper (Wrap, Bind, Health)
│   ├── auth/     # JWT and API key authentication
│   ├── config/   # Environment-based configuration
│   ├── database/ # PostgreSQL connections and migrations
│   ├── httperror/ # Typed HTTP error responses
│   ├── httpresponse/ # Standard response envelope
│   ├── middleware/ # CORS, request ID, recovery, logging
│   ├── openapi/  # OpenAPI 3.0 spec builder + docs UI
│   ├── queue/    # Redis-backed job queue
│   ├── realtime/ # WebSocket hub with Redis pub/sub
│   └── svc/      # Service-to-service discovery
├── scripts/      # Development and CI scripts
└── docs/         # Generated API documentation

Scripts

Script Description
./scripts/dev.sh Start local development environment
./scripts/install.sh Install all dependencies
./scripts/quality.sh Run linting, tests, and quality checks
./scripts/discover.sh List all components in the monorepo
./scripts/generate-client.sh Generate TypeScript API client from OpenAPI specs

Tech Stack

Layer Technology
Backend Go 1.25, chi router, sqlx, PostgreSQL, Redis
Frontend TypeScript, React, Radix UI, Tailwind CSS
Package management pnpm workspaces (TS), Go workspaces (Go)
Infrastructure Docker Compose (local), Woodpecker CI/CD
Auth JWT + API key with opt-in middleware
Docs OpenAPI 3.0 specs with Scalar UI

API Documentation

API documentation is generated from OpenAPI specs and deployed to:

Documentation is automatically rebuilt on every push to main.

Adding Components

Components are added via the rdev API:

# Add a Go service
curl -X POST $RDEV_API_URL/projects/foundary-test-1770784989/components \
  -H "X-API-Key: $RDEV_API_KEY" \
  -d '{"type": "service", "name": "auth-api"}'

# Add a React app
curl -X POST $RDEV_API_URL/projects/foundary-test-1770784989/components \
  -H "X-API-Key: $RDEV_API_KEY" \
  -d '{"type": "app", "name": "dashboard", "template": "app-react"}'