client-website-preview
Generate and deploy client website previews for landscaping, tree care, lawn maintenance, and outdoor service businesses. Use when user provides business data (name, phone, address, services) and wants a live preview website. Creates React/Vite/Tailwind site, pushes to GitHub branch, and returns Vercel preview URL.
When & Why to Use This Skill
This Claude skill automates the end-to-end process of generating and deploying professional, high-conversion website previews for service-oriented businesses like landscaping and tree care. By integrating GitHub and Vercel, it transforms raw business data into a live React/Tailwind CSS landing page, significantly accelerating the sales and prototyping cycle.
Use Cases
- Sales Prototyping: Instantly create a live, branded website preview for a prospective client during a sales call to demonstrate immediate value and professionalism.
- Automated Web Development: Streamline the deployment workflow by automatically generating boilerplate code, managing GitHub branches, and triggering Vercel deployments for small business sites.
- Marketing Content Generation: Rapidly spin up localized landing pages for outdoor services, featuring AI-generated imagery and customized service grids to test different market segments.
| name | client-website-preview |
|---|---|
| description | Generate and deploy client website previews for landscaping, tree care, lawn maintenance, and outdoor service businesses. Use when user provides business data (name, phone, address, services) and wants a live preview website. Creates React/Vite/Tailwind site, pushes to GitHub branch, and returns Vercel preview URL. |
Client Website Preview
Build and deploy client preview websites from business data.
Prerequisites
Required: GitHub MCP connected
Recommended: Vercel MCP connected (for deployment verification)
Check prerequisites before proceeding:
- Test GitHub MCP with any github operation
- If GitHub unavailable → STOP, notify user
- Check Vercel MCP availability, note for later
Input Requirements
Minimum required:
- Business name
- Phone number
- Address/service area
Optional:
- Services offered
- Hours of operation
- Taglines/USPs
- Testimonials
- Brand colors
Workflow
1. Generate Branch Name
Convert business name to kebab-case:
- "Green Hawaii Landscaping" →
green-hawaii - "Bob's Tree Service" →
bobs-tree-service - Remove special characters, suffixes (LLC, Inc), lowercase
2. Generate Images
Primary: Use nanobanana image generation
- Hero: Professional service scene matching business type/location
- Gallery: 4-6 realistic project photos
Fallback: Unsplash URLs (see references/fallback-images.md)
3. Build Website
Stack: Vite + React + Tailwind CSS v4
Design System: See references/design-system.md for:
- Color tokens (forest/gold palette)
- Typography (Playfair Display + Source Sans)
- Component patterns
- Section blueprints
Required Sections:
- Top bar (phone, hours, location)
- Navigation header
- Hero (headline, CTAs, rating)
- Trust bar
- Services grid (6 cards)
- About/Why Choose Us + stats
- Gallery
- Testimonials (3 cards)
- Service area + map
- Contact section + form
- Emergency banner
- Footer
- Mobile sticky CTA
4. Push to GitHub
Repository: hmseeb/client-previews
github:create_branch → [branch-name] from main
github:create_or_update_file → package.json
github:create_or_update_file → vite.config.js
github:create_or_update_file → index.html
github:create_or_update_file → src/main.jsx
github:create_or_update_file → src/index.css
github:create_or_update_file → src/App.jsx
5. Verify Deployment
If Vercel MCP available:
- Wait 30-60 seconds
Vercel:list_deploymentsfor project- Check status → if error, get build logs and debug
- Fix and re-push if needed
If Vercel MCP unavailable:
- Provide expected URL
- Ask user to verify manually
6. Deliver
URL Pattern:
https://client-previews-git-[branch]-badaaas.vercel.app
Response format:
done! here's your preview:
**[Business Name]**
🔗 [preview URL]
built with:
- [key features]
- [image source: AI-generated or unsplash]
Error Handling
| Error | Action |
|---|---|
| GitHub MCP missing | STOP, notify user |
| Branch exists | Ask: overwrite or new name? |
| Image gen fails | Use unsplash fallback |
| Push fails | Retry once, then notify |
| Vercel build fails | Fetch logs, fix, re-push |
| Vercel MCP missing | Continue, manual verify |