A modern, responsive cleaning service website built with React, TypeScript, and GSAP animations. This project showcases pixel-perfect implementation of a Figma design with smooth animations and professional user experience.
Website: View Live Demo
- π¨ Pixel-Perfect Design - Faithful implementation of Figma design
- π± Fully Responsive - Works seamlessly on all device sizes
- π Smooth Animations - GSAP-powered scroll animations and interactions
- β‘ Modern Tech Stack - React 18, TypeScript, Vite, Tailwind CSS
- π― Professional UX - Clean navigation and intuitive user flow
- π§ Contact Form - Functional contact form with validation
- π SEO Optimized - Clean HTML structure and meta tags
- React 18 - Modern React with hooks
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- Tailwind CSS 3 - Utility-first CSS framework
- GSAP - Professional-grade animations
- React Router 6 - SPA routing
- Express.js - Node.js web framework
- TypeScript - Server-side type safety
- Montserrat Font - Custom Google Fonts integration
- Custom Color Palette - Yeldy brand colors
- Responsive Grid - Mobile-first design approach
- Node.js 16+ and npm/yarn/pnpm
-
Clone the repository
git clone https://github.com/yourusername/cleaning-service-website.git cd cleaning-service-website -
Install dependencies
npm install # or yarn # or pnpm install
-
Environment Setup Create a
.envfile in the root directory:VITE_API_URL=your_api_url_here
-
Development Server
npm run dev # or yarn dev # or pnpm dev
Open http://localhost:8080 to view it in the browser.
npm run dev # Start dev server with hot reload
npm run typecheck # Run TypeScript type checking
npm test # Run test suitenpm run build # Build for production
npm start # Start production serverdist/spa/- Static client filesdist/server/- Server build files
βββ client/ # React frontend
β βββ components/ # Reusable UI components
β β βββ Header.tsx # Navigation header
β β βββ Hero.tsx # Hero section with logo
β β βββ Services.tsx # Services showcase
β β βββ YourNeeds.tsx # Benefits section
β β βββ PricesVary.tsx # Pricing factors
β β βββ Contact.tsx # Contact form
β β βββ Footer.tsx # Site footer
β βββ pages/ # Route components
β β βββ Index.tsx # Homepage
β β βββ About.tsx # About page
β β βββ Gallery.tsx # Gallery page
β β βββ ContactPage.tsx # Contact page
β βββ App.tsx # App routing setup
β βββ global.css # Global styles & theme
βββ server/ # Express API backend
β βββ routes/ # API endpoints
β βββ index.ts # Server configuration
βββ shared/ # Shared TypeScript types
βββ public/ # Static assets
--yeldy-teal: #397f77 /* Primary brand color */ --yeldy-green: #569f96
/* Secondary brand color */ --yeldy-lightgreen: #adfff6 /* Accent color */;- Primary Font: Montserrat (Google Fonts)
- Weights: 300, 400, 500, 600, 700, 800, 900
- Mobile: < 768px
- Tablet: 768px - 1024px
- Desktop: > 1024px
The website features smooth GSAP animations including:
- Header slide-in on page load
- Hero logo elastic entrance with rotation
- Scroll-triggered animations for each section
- Staggered text animations for better UX
- Number scale animations in pricing section
- Form field focus animations
- Homepage - Complete landing page with all sections
- About Us - Company information (placeholder)
- Gallery - Portfolio showcase (placeholder)
- Contact - Dedicated contact page with form
- Create component in
client/components/ - Import and add to
client/pages/Index.tsx - Style with Tailwind CSS classes
- Update
tailwind.config.tscolor definitions - Update CSS variables in
client/global.css
import gsap from "gsap";
import { ScrollTrigger } from "gsap/ScrollTrigger";
gsap.registerPlugin(ScrollTrigger);
// Add your animations
gsap.fromTo(
element,
{ opacity: 0, y: 50 },
{ opacity: 1, y: 0, duration: 0.8 },
);- Connect your GitHub repository
- Build command:
npm run build - Publish directory:
dist/spa
- Import from GitHub
- Framework preset: Vite
- Build command:
npm run build
- Run
npm run build - Upload
dist/spafolder to your host - Configure server for SPA routing
- β‘ Fast Loading - Optimized with Vite bundling
- πΌοΈ Image Optimization - Compressed images via Builder.io CDN
- π¦ Code Splitting - Automatic route-based splitting
- π― SEO Ready - Clean HTML structure and meta tags
Contributions are welcome! Please feel free to submit a Pull Request.
- Figma Design - For the beautiful design
- Vite - For the amazing build tool
- Tailwind CSS - For the utility-first CSS framework