In the age of the Internet, despite the increased ability for people to connect, people have found themselves more isolated from others. This especially rings true during the COVID-19 pandemic, where a large number of people have also found additional free time on their hands. We figured, with all this free time, that it could be an opportunity for people to spend it picking up skills that they otherwise may not have the time or motivation to. As a result, we created Ciao!, a skill exchange platform where users may connect with others to teach and learn different skills in a free, more community-based learning process.
What it does
- Users may create an account, specifying a name and profile picture, and configure their teachable and learnable skill sets.
- A recommender system connects users with others that offer similar skills to the users' interests.
- A chat feature allows users to easily communicate and connect with each other.
- Users may view other users' profiles to learn more about them, as well as transact in-game currency with them after learning a skill.
How we built it
- We used Flask as a web framework.
- We used Firebase as a platform to host data and manage user authentication.
- We used Tensorflow to implement an autoencoder that simulates the process of collaborative filtering and produces the matrix used for the site's recommender system.
Challenges we ran into
- Unfamiliarity with the languages, frameworks, and APIs.
- Prioritizing the implementation of certain features, given our time limit.
- Carefully formulating the design of the autoencoder, as well as those of its inputs and outputs, to produce the best results took quite a bit of tuning and re-planning.
Accomplishments that we're proud of
- We were able to complete all essential components of the web app.
- We navigated remote collaboration and a 12-hour timezone difference well, by organizing our tasks and timeline.
- We filled a gap in demand for a skill exchange platform.
What we learned
- We became more familiar with the process of bringing an end-to-end product to completion
- We learned to work more effectively as a team, communication and code-wise.
What's next for Ciao!
- A feature that can continuously update the matrix used for the recommender system.
- More flexibility in the recommendation feature.
- A more regulated trust-based system that ensure users receive in-game currency for teaching.
- Functionality of the search bar.
Check out the link in the README in our Github repo to access the web app, as well as for a demo video.