Our web-based application is an event management and ticketing platform that allows event organizers to create, promote, and manage events, while providing attendees with a streamlined experience for discovering, purchasing tickets, and attending events. It can cater to a wide range of events such as concerts, webinars, conferences, workshops, and community gatherings.
Install NPM and Node.js (Installation: Link)
Node.js v20.18.0
NPM 10.8.2
Install MySQL Workbench (Installation Link)
- Create an account for the root user
- Create a database by running the CREATE DATABASE ticket_pro command
- Execute the tm_createdb.sql file
- Create an .env file and include the following environmental variables (Replace password with the password used for the root user in the previous steps)
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=password
DB_NAME=ticket_pro - Add the .env file to the nextjs-dashboard directory
- Execute the insert.sql
- line 207-209 in the app/page.tsx, uncomment
// useEffect(() => { // imageForEvents(); // }, []);
-
Switch to ./nextjs-dashboard folder (Using cd command) after cloning Repository
-
Install pnpm
npm install -g pnpm- Install dependencies using pnpm:
pnpm i- Start the development server with the following command:
pnpm dev- Open http://localhost:3000 on your browser
- Build the application with the following command:
pnpm build- Running the application with the following command:
pnpm start- Execute the insert.sql
- line 207-209 in the app/page.tsx, comment again
useEffect(() => { imageForEvents(); }, []);
- User Management: Secure user login and sign-up process, including email validation and password hashing.
- Event Management: Ability to create, edit, and delete events, with dynamic querying and filters for event lists.
- Payment Integration: Frontend payment form and backend integration for ticket purchasing, including auto-incrementation of seat numbers.
- Homepage and Dashboard: Displays popular, registered, upcoming, and in-progress events, with side navigation for seamless navigation.
- Profile Pages: Displays user information, such as their registered events.