This is a full-stack MERN (MongoDB, Express.js, React.js, Node.js) application for a tree service company. It features a comprehensive client-facing website to showcase services, and a powerful admin panel for managing content, services, and customer requests.
- Services Pages: Detailed pages for various services like Tree Removal, Tree Trimming, Land Clearing, etc.
- Location-Specific Pages: Pages tailored for different service areas.
- Blog: A blog to share articles and news, with posts organized by categories.
- Photo Gallery: A gallery to showcase completed projects.
- Testimonials: Display customer testimonials and ratings.
- Contact & Estimate Forms: Allow users to contact the company and request service estimates.
- Secure Login: Admin authentication using JWT.
- Dashboard: An overview of the application's status.
- Blog Management: Full CRUD (Create, Read, Update, Delete) functionality for blog posts.
- Category Management: Add, delete, and update blog categories.
- Request Management: View and manage customer service requests and estimates.
- Profile Management: Admins can change their password and update their profile.
- Node.js
- Express.js
- MongoDB with Mongoose
- JSON Web Token (JWT) for authentication
- Bcrypt for password hashing
- Multer for file uploads
- Slugify for SEO-friendly URLs
- React.js
- Vite
- React Router for navigation
- Redux Toolkit for state management
- Axios for API requests
- Material-UI for UI components
- Tailwind CSS for styling
- React Quill for rich text editing
- Clone the repository:
git clone https://github.com/your-username/tree-project.git cd tree-project - Backend Setup:
Create a
cd Backend npm install.envfile in theBackenddirectory and add the following environment variables:MONGO_URI=<your_mongodb_connection_string> JWT_SECRET=<your_jwt_secret> - Frontend Setup:
cd ../Frontend npm install
-
Start the backend server:
cd Backend npm startThe backend will be running on
http://localhost:5000(or the port you configure). -
Start the frontend development server:
cd Frontend npm run devThe frontend will be running on
http://localhost:5173(or the port Vite chooses). -
Access the application:
- Website: Open your browser and go to
http://localhost:5173. - Admin Panel: Navigate to
http://localhost:5173/admin/loginto log in as an admin.
- Website: Open your browser and go to