Douglas Maxwell

Projects

Offerly  

Fall 2023 • GitHub

Collaborators - [ @dsm1015@lukemcelligott@tth1003 ]

Scrumbs Demo

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:

Offerly 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.

Offerly logo

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.

Docker logo GitHub logo

Tech used

  • SpringBoot
  • Maven
  • Thymeleaf
  • MySQL
  • JUnit
  • Java
  • JavaScript
  • HTML
  • CSS
  • BootStrap

Login Page:

Offerly Payment Page

Social Messaging:

Offerly Social Messaging

Payment Page:

Offerly Payment Page