laxdb is a suite of management tools designed specifically for lacrosse teams and clubs. It provides a comprehensive platform for handling team operations, organization management, and player coordination.
- Runtime: Bun
- Language: TypeScript with Effect-TS
- Infrastructure: Cloudflare Workers via Alchemy (TypeScript IaC)
- Database: PlanetScale (PostgreSQL) with Drizzle ORM
- Authentication: better-auth with organization and team support
- Frontend: TanStack Start (Web App, Marketing Site)
- Monorepo Management: Bun Workspaces and Turborepo
packages/api: Effect-based HTTP API with RPC supportpackages/core: Shared business logic, database schemas, and core servicespackages/docs: Documentation site built with Fumadocspackages/effect-cloudflare: Effect-TS bindings for Cloudflare primitives (KV, R2, D1, etc.)packages/marketing: Marketing website built with TanStack Startpackages/pipeline: Effect-based web scraping and HTML parsing pipelinepackages/scripts: Internal utility and maintenance scriptspackages/ui: Shared UI component library built with shadcn/ui (Base UI)packages/web: Main web application built with TanStack Start, deployed on Cloudflare Workers
- Bun runtime
- Cloudflare account with Wrangler CLI configured
This project uses Infisical for secrets management.
# Login to Infisical (opens browser)
infisical login
# Initialize project config (one-time)
infisical init
# Run commands with secrets injected
infisical run --env=dev -- bun run devSee docs/infisical/cli.md for more details.
bun installbun run dev: Starts the local development environment for all packagesbun run deploy: Deploys the infrastructure and applications to Cloudflare using Alchemybun run destroy: Tears down all deployed infrastructurebun run typecheck: Runs TypeScript compiler checks across the monorepobun run fix: Runs linting and formatting tools to ensure code quality
The project uses alchemy.run.ts to define and manage Cloudflare resources:
- Compute: Cloudflare Workers
- Database Connectivity: PlanetScale via Hyperdrive connection pooling
- Storage: Cloudflare R2 buckets
- Cache: Cloudflare KV namespaces
- Deployment Stages: Production (laxdb.io), Development (dev.laxdb.io), and PR previews