# C & I Electrical — Full-Stack Dockerized Site

Marketing + lead-gen site for a Corpus Christi electrical contractor.  
Frontend **Next.js 14 + Tailwind**, backend **Express + Prisma + Postgres**.  
Local fonts only, contact form endpoint with Zod validation, tests, and CI.

## Quickstart (Docker)
```bash
docker compose up -d --build
# Web:   http://localhost:3000
# API:   http://localhost:4000/health
```

## Dev (without Docker)
```bash
# API
cd api && npm install && npx prisma generate && npx prisma migrate dev --name init && npm run seed && npm run start

# Web (in a new terminal)
cd web && npm install && npm run dev
```

### Content
Edit `web/content/site.json` for business info and copy.

### Fonts & Images
Replace placeholders in `web/public/fonts` and `web/public/images` with your assets. No external CDNs.

### Notes
- Contact form posts to Next API route `/api/contact` (logs server-side).
- API exposes `/listings` JSON (seeded demo projects) and `/health`.