The Sports Centre Booking Portal is a Java-based application that facilitates the booking of courts at a virtual sports center. Users are able to register, log in, view availabilities out of the 6 courts on-site, make bookings, top up their account and view their bookings. This application utilizes Graphical User Interface (GUI) using Java Swing, and also utilizes the database component using Apache Derby.
The program has been developed following Object-Oriented Programming principles, SOLID design principles, and implements several design patterns such as Singleton and Factory. Unit tests have been written using JUnit, and code smells have been eliminated to improve code quality.
If you would like to play around with the app, please check out the GitHub repository for additional details on the functionality.