My inspiration to create this project came from the many programming courses, summer camps, hackathons, and other events that I have taken part in. Many people (kids and adults), have no idea where to find resources to learn and what resources will be best suited for them, so I wanted to help everyone out.

What it does

This web application allows users to search for coding resources and save them in their account for later use. It also has a recommendation system based on several metrics (clicks, stars, and others) to show each user custom results.

How I built it

I built this using the help of Google Custom Search API interconnected with Google Programmable Search Engine in to select resources from the best domains on the web. I also used Cockroach Cloud to store necessary information to recommend the best content. For the login system, I used SAWO API, allowing a user to login without a password by providing either their email or phone number.

Challenges I ran into

One challenge I ran in to was figuring out how to recommend different sources for the user because there was no clear-cut algorithm to show the best results for each user.

Accomplishments that I am proud of

I am proud that I was able to save the user's starred sources and load them, so they can view them for later. I am also happy that I could get this working through a public website because it allows anyone who wants to save coding resources that they need.

What I learned

I learned how to use Google Custom Search API to find specific coding resources with Google Programmable Search. I had to figure out how to only search from specific domains on the internet, so my search wouldn't provide a user with unrelated information. I also better learned how to use SAWO API for logging users by adding a feature to choose to log in with either option (email or phone number).

What's next for CodeFind

The biggest next step for CodeFind is to improve the recommendation algorithm. This can be done by getting more data and research the best ways to recommend to each user. There is also needed improvement in the UI and design, while it looks OK for a prototype, it needs work to be put in to production.

Built With

Share this project: