Inspiration
The inspiration behind this project came when the group-members were complaining about how difficult it is to use LeetCode as a beginner. LeetCode doesn't categorize questions efficiently for users, and moreover the difficulty rating provided by LeetCode could be a demotivating factor for users. Users usually resort to using a platform like AlgoExpert, or use an excel sheet as a to-do list. We wanted to solve this problem and hence the inspiration behind Litkode!
What it does
LiKode curates and manages LeetCode questions for users. Users can create a list of questions (similar to a playlist on Spotify), and when the user complets a question, Litkode asks the user to provide feedback on how difficult the user thought the question was. Litkode uses this feedback by the user, and data collected from LeetCode to come up with a list of questions the user should solve next to continue growing their programming skills!
How we built it
The front-end is built using Next.js, React.js and Chakra UI, and the back-end is build using Python. SQL is used as to store user data. The metadata about questions is fetched from LeetCodeβs API (along with the difficulty rating, acceptance rate and topic of the question), and all the data processing is done using NumPy and Pandas. FastAPI is used to build the end-points for the front-end
Challenges we ran into
LeetCode does not allow scraping question data from their website, so we had to clean and pre-process data collected from their API to generate any meaningful recommendations We had no idea about how to build a back-end. All of us had experience working with front-end. We had to collaborate extensively so that we could learn the back-end, and build the front-end simultaneously!
Accomplishments that we're proud of
We got it up and running!
What we learned
Attending an online hackathon and finding a team member who resonates with you was very hard. However, we made sure to communicate a lot and find what skills we all had and what we could work on. We set clear goals and expectations for each team-member, which made the development and deployment of Litkode very smooth!
What's next for Litkode
We plan on keeping the website up for public use! Moreover, further improvements can be done to the recommendation - model. Machine-learning and Artificial Intelligence can be a part of the predictive model once we have enough data!
For questions on discord - <Aaron/>#9345

Log in or sign up for Devpost to join the conversation.