Inspiration
In today's fast-paced world, students often find it challenging to meet new people and form meaningful connections. As a solution, we decided to create SITDating, a unique platform tailored specifically for students to connect with their peers. The inspiration came from the desire to foster a sense of community and belonging within the university environment, providing an easy and intuitive way for students to meet, interact, and potentially find their match.
What it does
SITDating is a dating platform designed to connect students from the same university. It allows users to create profiles, swipe right or left based on their preferences, and chat with matches. The app focuses on creating a safe and inclusive environment where students can find friends, study partners, or even romantic connections. Key features include:
Profile Creation: Users can create detailed profiles including their interests, courses, and personal preferences. Swipe Functionality: Similar to popular dating apps, users can swipe right to like or left to pass on other profiles. Matching : When two users swipe right on each other, they are matched.
Interest-Based Matching: Users can be matched based on shared interests and courses, enhancing the chances of meaningful connections.
How we built it
How we built it Building SITDating was a challenging yet rewarding experience. We used the following technologies and tools:
Backend: We developed the backend using Flask, a lightweight web framework for Python, to handle user authentication, profile management, and matchmaking logic. Frontend: The user interface was built using Flask, making it interactive and user-friendly. Database: MySQL was used for storing user data securely, accessed through SQLAlchemy. SSH Tunneling: To securely connect to the database, we implemented SSH tunneling using the sshtunnel Python library. Computer Vision: OpenCV and pytesseract were utilized for some advanced features like image processing and text recognition within user profiles.
Challenges we ran into
Server Configuration: Setting up and configuring the server (initially with Nginx, later switching to Apache) to handle the application requests efficiently was complex and time-consuming. Due to the lack of time, we were unable to fully set up and host the website with Apache. Chat Implementation: Despite our efforts, we did not manage to implement the conversation chat feature within the given time frame.
Accomplishments that we're proud of
Fully Functional Prototype: We successfully developed a fully functional dating platform within 24 hours, complete with user authentication, profile management, and matching features. Secure and Scalable Backend: We implemented a secure and scalable backend using Flask and MySQL, ensuring data integrity and security. Interactive Frontend: The frontend, built with Streamlit, is intuitive and user-friendly, providing a seamless user experience. Learning and Adaptation: We quickly adapted to new challenges, learning to switch from Nginx to Apache, and resolving complex server and deployment issues.
What we learned
Database Security: Implementing secure database connections via SSH tunneling was a critical learning point. Team Collaboration: Working under tight deadlines reinforced the importance of teamwork, communication, and quick problem-solving.
What's next for SITDating
Enhanced Matching Algorithms: We aim to improve our matching algorithms using machine learning to provide more accurate and meaningful matches. Mobile App Development: Developing a mobile app version of SITDating to reach a wider audience and enhance accessibility.
Log in or sign up for Devpost to join the conversation.