Inspiration

When thinking of project ideas for the hackathon, we began by thinking about problems in our life that could be solved (as one does). Heer has been struggling to find someone to take on her sublease for the summer. The current way that students get in touch with each other is via a "uva housing" GroupMe, where students will message their preferences and available subleases. However, the onus is still upon the students to reach out and message each other, as well as actively seek out requests that match one's preferences. Furthermore, many current housing websites, such as Apartments.com, don't offer short leasing periods such as the summer or a semester.

Enter Cavalease: a platform to ease the apartment search process for UVA students.

What it does

Cavalease seeks to streamline the housing search process, consolidating all necessary information into one easy-to-use interface. Students create an account and then choose to put up a listing for subletting or search available subleases. The filter options on the search page allow for the user to narrow down options that align with their preferences. Once they find a unit they are interested in, users can contact the student who put up the sublease and finalize their decision.

How we built it

Cavalease was built with a React front-end and a Django REST API back-end along with AWS S3, Google Cloud, and Firebase. API hosting is on Heroku and front-end hosting is on Vercel.

Challenges we ran into

One of the biggest challenges we faced with this project was login authentication across React pages. We wanted to ensure that the user_id attribute was preserved across pages when users ran queries and searches, as it is an important identifier and foreign key in the database, and is instrumental to the functionality of the application. Ultimately, after many attempts and failed trials, we were able to figure out how to maintain login status.

Accomplishments that we're proud of

We're super proud of the project as a whole, and hopefully being able to bring something functional and helpful to the U.Va. community. Specifically, we love our U.Va.-themed user interface, and how the transitions bring the project together and make it visually appealing and interesting to use.

What we learned

We learned SO MUCH about the many different platforms and databases we utilized and how they work together. The most important thing, however, was the importance of effective communication and problem-solving. We split the work up such that one teammate handled the front-end and the other handled the back-end, and communicating about our code and explaining functionality to the other made integration and debugging much smoother processes.

What's next for Cavalease

We hope to continue developing Cavalease to increase usability and scale it up for use by the larger U.Va. community. Some elements that we are aiming to implement include:

  • alerts system for when a listing is available that matches a certain percentage of one's preferences
  • user-based confirmation process for listing removal (subleaser and subleasee must both confirm the assignment of the unit to remove it from the site)
  • scalability to mobile and eventual app creation
Share this project:

Updates