A full-stack MERN application for managing local service requests between users and providers. Built with a premium, dynamic UI using Tailwind CSS and React.
- Authentication: JWT-based secure authentication with bcrypt password hashing.
- Roles: Distinct
userandproviderportals. - Service Workflow:
- Users create service requests.
- Providers view the "Job Market" and accept pending tasks.
- Providers transition task status to "in-progress" and "completed".
- Users can review completed tasks.
- Clean Architecture: Built following the MVC pattern.
- Database: MongoDB & Mongoose
- Backend Frameowrk: Express.js, Node.js
- Frontend Framework: React (Vite)
- Styling: Tailwind CSS, Lucide Icons
- Open a terminal and navigate to the
backendfolder:cd backend - Install dependencies:
npm install
- Make sure MongoDB is running locally on port
27017(or changeMONGODB_URIinbackend/.env). If you do not have MongoDB running locally, update theMONGODB_URIto a MongoDB Atlas cluster URL. - Start the backend development server:
npm run dev
- Open a new terminal window and navigate to the
frontendfolder:cd frontend - Install dependencies:
npm install
- Start the Vite development server:
npm run dev
- Register as a "Standard User" or "Service Provider".
- Switch accounts or run two incognito windows to test both views.
- User: Click New Request to create a job.
- Provider: View the job in Job Market and click Accept Job.
- Provider: In My Active Tasks, mark the job as In-Progress, then Completed.
- User: See the status update to "completed" and leave a Review.