Live at https://invite-onweb.vercel.app/
- Event Creation: Create and customize events with ease.
- Registration Management: Allow attendees to register for events online.
- Ticket Booking: Enable attendees to book tickets for events online.
- Email Notifications: Send automated emails for event registrations and bookings, which are sent directly to attendees' email addresses.
- Attendee Tracking: Keep track of attendees and monitor check-in and check-out times.
- Admin Management: Product managers can add admins that can create and manage events.
- Next.js: A React-based framework for building server-side rendered applications.
- Tailwind CSS: A utility-first CSS framework for building responsive and customizable user interfaces.
- JavaScript: A programming language used for client-side and server-side scripting.
- Node.js: A JavaScript runtime environment used for building scalable and efficient server-side applications.
- Express: A minimalist web framework for building server-side applications with Node.js.
- MongoDB: A NoSQL document-oriented database used for storing and retrieving data.
You can download the zip file of the repository or use the following command in your terminal to clone the repository:
git clone https://github.com/d17012002/event-management
Once you have downloaded or cloned the repository, navigate to the project's root directory. The project consists of three folders: client, server, and developer.
Before starting the servers, make sure to install the dependencies by running the command:
npm install
Before running the servers, you need to set up the following environment variables:
Create a .env.local file in the client folder with the following variables:
NEXT_PUBLIC_BASE_URL - the base URL of the API server (e.g. http://localhost:3000)
NEXT_PUBLIC_STRIPE_KEY - the public key for your Stripe account
NEXT_PUBLIC_API_URL - the URL of the API server (e.g. http://localhost:5000)
Create a .env file in the server folder with the following variables:
MONGO_ATLAS_URI - the connection string for your MongoDB Atlas database
STRIPE_KEY - the secret key for your Stripe account
NODE_MAILER_USER - the email address to use for sending email notifications
NODE_MAILER_PASS - the password for the email address to use for sending email notifications
JWT_SECRET - the secret key to use for JWT token generation
To start the servers, run the following commands:
For the client-side:
npm run dev
For the server-side:
nodemon index.js
For the developer-side:
npm run dev
Our event management system has three main components:
- User: Users can sign in or sign up and access the user dashboard to view and register for events.
- Admin: Admins can log in to create events, view their events, and manage registrations for their events.
- Developer: Developers can access the developer site to create new admins (later this feature will be available only to product managers).
Our team consists of:
- Anurag Kumar Singh: Connect with Anurag on LinkedIn and GitHub , or visit his personal website .
- Devanshu Yadav: Connect with Devanshu on LinkedIn and GitHub , or visit his personal website .
- Saksham Gupta: Connect with Saksham on LinkedIn and GitHub , or visit his personal website .
We welcome contributions to our project. If you have any suggestions or improvements, feel free to submit a pull request or open an issue.
This project is licensed under the MIT License - see the LICENSE.md file for details.