This is a web application for managing events, built using Java and Spring Boot. It allows users to browse and register for events, leave comments, and purchase tickets. The app also includes an admin panel for event and content management. Additionally, JavaMailSender is used to send email notifications when an order is placed, ensuring users are confirmed about their order status. Thymeleaf is leveraged for rendering dynamic HTML content, enabling a seamless and customizable user experience.
- Java 17
- Spring Boot 3.4.1
- Maven
- JPA
- Liquibase
- Lombok
- Apache Commons Codec
- Spring Boot Email
- HTML, CSS, JavaScript, Thymeleaf
- H2 database (in-memory database)
- Thumbnailator
User features
- Authentication: Login & Registration (session)
- Event browsing: View events added by the administrator
- Comments: Add and rate comments under events
- Ticket Ordering: Add events to a cart and place an order
- Email notifications: Receive an email confirmation after placing an order
- Theme customization: Change theme color from the user profile
- Photo gallery: View event images in a slider (first you need to add images to the database from the admin panel)
Admin panel
- Add and manage events
- Upload images to the database and edit their descriptions
- Configure event slider
- Change application theme colors
Moderator panel
- Add and edit events
- Manage event images
- Approve or reject user comments
- Manage ticket orders