An auction platform that allows users to create, bid on, and manage auction items. The platform consists of a backend built with Node.js and Express, and a frontend built with React.
-
Backend:
- Node.js
- Express.js
- MongoDB (with Mongoose)
- JWT for authentication
- Node-cron for scheduling tasks
- CORS for handling cross-origin requests
-
Frontend:
- React
- Vite for development
- React Router for navigation
- Axios for API requests
The backend is structured with various controllers, models, and routes:
- Controllers: Handle business logic for users, items, bids, and authentication.
- Models: Define the data structure for users, items, and bids.
- Routes: API endpoints for handling requests related to auctions.
The frontend is a React application that provides a user-friendly interface for interacting with the auction platform:
- Routing: Uses React Router for navigation between different pages.
- Protected Routes: Certain routes require authentication to access, ensuring secure access to user-specific features.
- Clone the repository.
- Navigate to the
backenddirectory and install dependencies:npm install
- Set up your MongoDB connection in a
.envfile or use the default local connection. - Start the backend server:
npm run dev
- Navigate to the
frontenddirectory and install dependencies:npm install
- Start the frontend development server:
npm run dev
- Authentication:
/api/auth - Items:
/api/items - Bids:
/api/bids - Users:
/api/users - Admin:
/api/admin
This README provides a comprehensive overview of the Auction Platform project, including its structure, technologies, and how to run it.