A full-stack web application designed to streamline event management for hosts, vendors, and sponsors. This platform provides a centralized hub for creating, managing, and participating in events, with dedicated dashboards and features for different user roles.
- Browse and search for upcoming events.
- View detailed event information.
- Register for events.
- Secure login and registration.
- Create, update, and delete events.
- Dashboard to view and manage all hosted events.
- Dedicated vendor portal with a secure login.
- Dynamic dashboard showing key stats like revenue, orders, and active stalls.
- View a live list of event opportunities.
- Manage stalls, services, orders, and payments.
- Dedicated sponsor portal.
- Browse sponsorship opportunities.
- Dashboard to manage sponsorships and view analytics.
This project is built on the MERN stack with a modern toolchain.
-
Frontend:
- React.js: A JavaScript library for building user interfaces.
- Vite: A fast and modern frontend build tool.
- React Router: For client-side routing.
- Axios: For making HTTP requests to the backend API.
- Tailwind CSS: For utility-first styling.
-
Backend:
- Node.js: A JavaScript runtime for the server.
- Express.js: A web application framework for Node.js.
- MongoDB: A NoSQL database for storing application data.
- Mongoose: An ODM library for MongoDB and Node.js.
- JSON Web Tokens (JWT): For secure user authentication.
- Multer: For handling file uploads (e.g., event images).
To get a local copy up and running, follow these simple steps.
Make sure you have the following installed on your machine:
- Node.js (v18 or higher)
- npm (or yarn)
- MongoDB (You can use a local instance or a free cloud service like MongoDB Atlas)
# Navigate to the backend directory
cd backend
# Install dependencies
npm install
# Create a .env file in the 'backend' root and add your MongoDB connection string
# and a secret for JWT.Your backend/.env file should look like this:
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_super_secret_jwt_key# Start the backend server (it will run on http://localhost:5000)
nodemon server.js# Navigate to the frontend directory from the project root
cd frontend/event
# Install dependencies
npm install
# Start the frontend development server (it will run on http://localhost:5173)
npm run devYour application should now be running! The frontend will be accessible at http://localhost:5173 and it will communicate with your backend server at http://localhost:5000.