Real World Landlord Interactions Simulator

Our web application is designed to imitate real-world landlord interactions, providing university students with a unique opportunity to gain real-world experience. This project bridges the gap between academic learning and practical scenarios, empowering students to approach rental situations with confidence and knowledge.


Challenges We Ran Into:

Backend

A huge challenge in developing Lease Me Before You Go Go was utilizing spaCy’s Natural Language Processing (NLP) capabilities to compare user responses with predefined “good” questions. The system flagged a user response as "good" if it met a similarity threshold. However, this occasionally led to unrelated questions being incorrectly marked as relevant. Fixing this bug required an understanding of how spaCy uses cosine similarity and lots of experimentation!

Frontend

One of the major challenges was designing a user interface that mimicked the conversational flow between tenants and landlords while maintaining responsiveness across different devices. Balancing aesthetic appeal with functional components was a difficult but rewarding process. Additionally, integrating backend functionalities like dynamic responses and custom queries into the frontend required seamless communication between both ends.


Accomplishments That We’re Proud Of:

Backend

We are thrilled with how we leveraged Google Gemini to generate accurate responses that resonate with their given persona. After hours of tinkering with specific and personalized querying, we managed to produce dynamic interactions between “tenant” and “landlord.” We are also proud of the structure behind identifying which “landlord” we are communicating with. Exploiting the basic idea of Python dictionaries allowed us to assign properties to a “landlord” including their name, where the rental is located, and way more.

Frontend

We successfully created a user-friendly and intuitive interface that allows users to seamlessly navigate the simulation. The design incorporates interactive elements to keep users engaged and improve their overall experience. We are particularly proud of the animations and transitions that enhance the visual appeal while maintaining functionality.


Why We Used These Technologies:

Backend

The backend was built using Python and Flask. We implemented spaCy for NLP capabilities and integrated Google Gemini for AI-generated responses. Flask provided the backbone for routing and processing user interactions, while spaCy handled the natural language processing required to analyze user inputs. The backend also used Python dictionaries to store and manage dynamic landlord profiles.

Python was the ideal choice for this project because of its extensive collection of libraries related to artificial intelligence. This allowed us to quickly and efficiently build the application using Flask as a web framework. We chose Gemini over other AI models because of online reviews promoting its creativity and human-like tone, which proved effective.

Frontend

We opted for React and NextJS because they are standard technologies for web development and allowed for quick prototyping. Tailwind CSS was chosen to ensure that the application was responsive and visually appealing across devices. JavaScript was integral to building dynamic and interactive elements, which are key to the application's usability.


What’s Next for Lease Me Before You Go Go:

  • Expand landlord personas: Introduce a wider variety of landlord profiles with unique traits and responses.
  • Improved NLP accuracy: Refine the system to better recognize user inputs and provide more precise feedback.
  • Additional scenarios: Add more realistic rental scenarios to cover a broader range of potential interactions.
  • Mobile app development: Develop a mobile version of the application to make it more accessible.
  • Multi-language support: Include support for multiple languages to reach a global audience.

Thank you for checking out our project! We hope it inspires and empowers students to handle real-world rental situations with confidence.

Built With

Share this project:

Updates

Submission history