Pretty much an Ebay clone
Offerly was developed to be an online auction platform. Users hold the power to buy and sell items, and bid on items in real time. The platform is built with SpringBoot and Thymeleaf, and uses MySQL for the database. The front end is built with HTML, CSS, and JavaScript.
Product Listing:
Background
Offerly was inherited from a previous team of software engineering students. Our team was tasked with adding new features and updating the UI, as well as cleaning up the code. Some of the features we added were a social messaging system, a payment page, an auction system with automatic bidding, and a user rating system.
Our Journey
Very quickly, we realized that the code was a mess. We spent a lot of time refactoring, organizing the database, and implementing new data structuers on the backend. One of our early successes was creating a dynamic category tree that would allow us to manage the hierarchy of the categories. We also revamped the admin panel to allow for easier management of users and items. From there, many weeks were spent adding new features and updating the UI.
Workflow
We also realized early on that we would benefit from a more organized workflow. Having some intern experience with this, I took on the role of DevOps engineer. Using GitHub, we implemented a feature branch workflow, and we used GitHub Issues to manage our tasks. Additionally we setup a CI/CD pipeline with Docker and GitHub Actions to automate our testing and deployment. The pipeline would build the project, run the tests, and deploy the project to a local server on campus.
Tech used
- SpringBoot
- Maven
- Thymeleaf
- MySQL
- JUnit
- Java
- JavaScript
- HTML
- CSS
- BootStrap