Inspiration
The concept for Fault Finder arose while looking through the possibilities that AI has in regards to educating aspiring software developers. By using AI we can ensure that people are able to learn and practice debugging in order to prepare for real world coding interviews and peer coding sessions.
What it does
Fault Finder provides the user with a variety of partially solved algorithm questions. It is the users task to fix the mistakes which can range for logical errors to optimization and time complexity improvements. Users are also given the incentive of a leader board to improve their times and scores in daily challenges
How we built it
Astro is our framework of choice. We used node js, express, and axios for server to client communication. We also used CodeMirror to implement a fully themes web based text editor for users to edit their code in. In order to run the code the node runtime for python was used which is able to take in parsed data from the CodeMirror instance and after appending some driver code, execute test cases to see if the users submission is valid. On the frontend of our application the Motion One library was used for animations due to its small package size and simple syntax. Figma was our design tool fo choice for wire framing.
Challenges we ran into
One of the major challenges we faced was getting the server to run python code which the user submitted. Figuring out how to pipe the CodeMirror state into a valid python file was very tedious but taught some very important lessons in server side.
Accomplishments that we're proud of
We are very proud of the visuals and user experience of our site. We feel that the landing page is captivating with its large text and bold background choice while the home page is inviting with its bright colours and easy to follow UI. We found that keeping the code editor simple to avoid distractions was a key component to improving our UX.
What we learned
The key takeaway for us as a team is that planning is key to success. There were multiple instances where we agreed that we would have been servery behind on schedule had we not taken the time to plan out our site layout and algorithms through wire frames. Having a plan for the easy to intermediate tasks let us focus our efforts on solving the more difficult problems together.
What's next for Fault Finder
Fault Finder will move forward by further improving its ability to live generate and parse possible questions and solutions from AI sources. Alongside this we have plans for a versus category where users can go head to head in a debugging challenge with each other to climb leader board ranks. We are excited to see how far we can push this unique idea!
Built With
- astro
- axios
- chatgpt
- codemirror
- express.js
- figma
- node.js
Log in or sign up for Devpost to join the conversation.