A modern, minimalist website for Lalas Cleaning company built with React and Node.js.
- Modern Design: Minimalist white/black/blue color scheme with no gradients
- Responsive: Fully responsive design that works on all devices
- Interactive Elements: Smooth animations and transitions
- Service Booking: Interactive booking system for customers
- Contact Form: Easy-to-use contact form for inquiries
- Admin Dashboard Ready: Backend API for managing bookings and contacts
- React 18.2.0: UI framework
- React Router 6.20.0: Navigation and routing
- Vite 5.0.0: Build tool and dev server
- Lucide React 0.294.0: Icon library
- CSS3: Custom styling with CSS variables
- Node.js: JavaScript runtime
- Express.js 4.18.2: Web framework
- CORS: Cross-origin resource sharing
- dotenv: Environment variable management
lalas-cleaning/
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ │ ├── Navbar.jsx
│ │ │ ├── Footer.jsx
│ │ │ └── BookingForm.jsx
│ │ ├── pages/
│ │ │ ├── Home.jsx
│ │ │ ├── About.jsx
│ │ │ ├── Services.jsx
│ │ │ └── Contact.jsx
│ │ ├── styles/
│ │ │ ├── Navbar.css
│ │ │ ├── Footer.css
│ │ │ ├── Home.css
│ │ │ ├── About.css
│ │ │ ├── Services.css
│ │ │ ├── Contact.css
│ │ │ └── BookingForm.css
│ │ ├── App.jsx
│ │ ├── App.css
│ │ ├── index.css
│ │ └── main.jsx
│ ├── package.json
│ ├── vite.config.js
│ ├── index.html
│ └── eslint.config.js
│
└── backend/
├── server.js
├── package.json
└── .env
- Node.js 16.x or higher
- npm or yarn package manager
- Navigate to the backend directory:
cd backend- Install dependencies:
npm install- Create a
.envfile (already created):
PORT=5000
NODE_ENV=development
- Start the backend server:
npm run devThe backend will run on http://localhost:5000
- Navigate to the frontend directory:
cd frontend- Install dependencies:
npm install- Start the development server:
npm run devThe frontend will run on http://localhost:5173
- POST
/api/contact- Body:
{ name, email, phone, subject, message } - Returns:
{ success: true, contactId: number }
- Body:
-
POST
/api/bookings- Body:
{ name, email, phone, service, date, time, area, notes } - Returns:
{ success: true, bookingId: number }
- Body:
-
GET
/api/bookings- Get all bookings (admin) -
GET
/api/bookings/:id- Get specific booking
- GET
/api/services- Get all available services
- GET
/api/health- Check server status
- Home: Landing page with services overview and hero section
- About: Company information and values
- Services: Detailed service descriptions with pricing
- Contact: Contact form and information
- Click "Book Our Service" or go to any page
- Fill in your details
- Select a service, date, and time
- Submit the booking
- You'll receive a confirmation
- Fill in the contact form with your inquiry
- Submit the message
- Our team will respond within 24 hours
- Primary: #1a1a1a (Black)
- Secondary: #ffffff (White)
- Accent: #2563eb (Blue)
- Light Background: #f5f5f5
- Border: #e5e7eb
- Text Light: #666666
- Run
npm run devfor hot module reloading - Run
npm run buildto create production build - Run
npm run previewto preview production build
- Run
npm run devto start with auto-reload (requires nodemon) - Run
npm startfor production
- Database integration (MongoDB/PostgreSQL)
- Email notifications
- Payment integration
- Admin dashboard
- Customer dashboard
- Service ratings and reviews
- Multi-language support
- Blog section
Contributions are welcome! Please follow the coding standards and create pull requests for any improvements.
MIT License - feel free to use this project for your needs.
For support, email info@lalascleaning.com or call +1 (555) 123-4567
Built with ❤️ for Lalas Cleaning Company