Single-page marketing site for Olympic Builders, a general contractor serving Park City and Salt Lake City, Utah. Built with Next.js, MUI, and deployed on Vercel.
- Single scrolling homepage with anchor navigation
- Contact form powered by Resend
- Mobile sticky call-to-action bar
- SEO metadata and LocalBusiness JSON-LD
- Centralized content in
src/content/site.ts
- Node.js 18+
- A Resend account and API key
npm install
cp .env.example .env.localEdit .env.local and set:
RESEND_API_KEY— from Resend dashboardCONTACT_TO_EMAIL— defaults toolympicbuildersutah@gmail.comCONTACT_FROM_EMAIL— useonboarding@resend.devfor testing; switch to a verified domain sender for productionNEXT_PUBLIC_SITE_URL— your production URL
npm run devOpen http://localhost:3000.
npm run build
npm startEdit src/content/site.ts for copy, phone, email, services, and navigation.
- Add photos to
public/images/ - Update paths in
site.tsunderimagesandprojects - Replace
public/logo.svgwith the client logo (logo.pngorlogo.svg)
Placeholder project photos are marked with a "Sample" chip in the gallery.
- Push this repo to GitHub
- Import the project in Vercel
- Add environment variables from
.env.example - Deploy
- Connect your custom domain
- Verify your domain in Resend and update
CONTACT_FROM_EMAIL
src/
app/ # Next.js App Router pages and API
components/ # UI components and page sections
content/site.ts # Editable site copy and image paths
theme/ # MUI theme and provider
lib/seo.ts # Metadata configuration
public/
images/ # Hero and project photos
logo.svg # Logo (replace with client asset)