Inspiration

Our motivation to develop a multi-functional housing and roommate finder app stemmed from recognizing the challenges students face when seeking the perfect off-campus housing and compatible roommates. We built this initial version to demonstrate how we can effectively support the student community.

What it does

Our application currently offers two major functions. First, it helps users find the right off-campus housing by considering attributes like cost, layouts, and amenities. Second, it assists users in finding the perfect roommates by evaluating their interests, habits, and college details. One of the most innovative features we showcase is the option to simulate a conversation with a well-matched person, saving users the effort of initiating a chat to gauge the other person's personality. This is achieved by allowing users to upload a small portion of a single chat, enabling them to better understand their conversation style, tone, profile, and preferences.

How we built it

We decided to develop a basic Streamlit application. After studying the documentation, we set up the housing function using Streamlit's API references like widgets, maps, and sliders. Next, we implemented user authentication by creating a basic sign-up and login page to record users, their profiles, and preferences. We then integrated the Gemini API to utilize text files and relevant information from two matching users, ultimately creating a function that can generate a simulated chat between those looking for roommates.

Challenges we ran into

We ran into a few challenges:

  1. Integrating the Gemini API with the Streamlit interface
  2. Large file size causing slow runtime
  3. Setting up user auth and storing user data

Accomplishments that we're proud of

We are proud of:

  1. Achieving the ideal version of our application that we envisioned
  2. Learning new technology and successfully applying it to our application
  3. Creating a good user flow from sign up to finding roommates

What we learned

We learnt:

  1. How to set up user auth successfully, taking names, passwords, profile details, preferences and their .txt files
  2. Understanding how to integrate Gemini and prompt engineering within our application
  3. Project management and delegation of tasks through GitHub

What's next for LeasyBot

We are planning to improve the map feature to make it more interactive and informative as well as use cloud databases to store our user information.

Built With

Share this project:

Updates