|
|
||
|---|---|---|
| api | ||
| web | ||
| .env.example | ||
| IMPLEMENTATION_NOTES.md | ||
| README.md | ||
| docker-compose.yml | ||
| package-lock.json | ||
README.md
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)
docker compose up -d --build
# Web: http://localhost:3000
# API: http://localhost:4000/health
Dev (without Docker)
# 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
/listingsJSON (seeded demo projects) and/health.