Inspiration

We have all experienced loneliness at some point and wanted to create an application where dating is less and a dream and more of a reality.

What it does

Flirt and Learn is a web application where inexperienced adults can practice flirting with different personalities given by the user.

How we built it

We used web technologies (HTML, CSS, JS) as the base and Python for our backend. As for frameworks, we implemented HTMX, Flask, SvelteKit, And MongoDB. We deployed and used the domain from GoDaddy, our server is on Google Cloud. For the wireframes and logo, we used Figma and Canvas.

On the backend, we used Python libraries and API to alleviate some of the difficulties. We used PyMongo and OpenAI

Challenges we ran into

We ran into a lot of challenges. Starting with the front end, we had challenges using SvelteKit as the newer version had little documentation compared to the older versions. Moving into the backend, we didn't understand how HTMX sent requests and how it kept refreshing the page. With how HTMX was created, it was complicated trying to narrow down the issue using the Console because of the constant refreshing. Lastly, OpenAI had a lot of conflicting changes. With the amount of updates it was getting, support forums were becoming more and more limited.

Accomplishments that we're proud of

We are very proud of creating this application despite the difficulties. We almost took the path of switching frameworks or even worse, no frameworks at all. We overcame the difficulties without surrendering to the easier path.

What we learned

We learned to stick to technologies we know for time-constraint events. Especially dividing the responsibilities to improve productivity.

What's next for Flirt and Learn

We would like to make it flexible with more cultures and have the learning module developed with lessons. One more we would like to add is having multiple instances and audio recognition.

There are a lot of next steps to having this web application close to completion.

Built With

Share this project:

Updates