Inspiration ๐งต
We, software engineers, are a bit lazy creatures. In our own careers as software engineers, there have been many situations when we've needed to repeatedly find up how to code something in a certain language.
Many a time we come across a piece of code or a function that we are unable to understand. So we created a web app to solve this problem, where we can get code snippets by just giving a one-line prompt in form of speech, and also an option where users can get an explanation of what the code is doing.
What it does ๐ค
- We can speak and give a one-line prompt, and it will give us a precise code based on our speech prompt.
- There's also an
Explainfeature which gives an accurate and detailed explanation of what that code is doing.
How we built it ๐ ๏ธ
- We built this app using React, Vite, and Javascript for the front end and used Flask in the backend.
- We also used React's Speechly library to take input from users with a microphone.
- We leveraged Open AI's GPT-3 natural language model and fine-tuned it to develop the various features of our application.
Working Flow ๐งโ๐ป
- User Input is taken from the React frontend using
speechly. - The speech is converted to text and a
POSTrequest is made to the Flask backend. - On a successful request, the input is sent to the text (converted from speech) is sent to the backend.
- Once the data is received by the Flask backend, it sends it through to our primed
gpt-3model, which generates a code based on our prompt. - Finally the generated Code is sent to our React frontend where it is displayed in a prettified format.
Challenges we ran into ๐
- Priming the gpt-3 model was the trickiest part for us as we had to find the best prompt which does the task.
- Also, integrating the gpt-3 model into our web app was a bit challenging, as the model worked fine separately but ran into errors and didn't fetch results when integrated into the pipeline.
- Integrating the React frontend and Flask backend was a challenge, as there was a delay in response
Accomplishments that we're proud of ๐
Proud to have completed a fully-fledged application in a relatively short duration of time. Also, our webapp can be super helpful in real life. Software Developers and all the Computer Science folks can use it for various use cases.
What we learned ๐
We learned some new soft skills in time management, and also some technical skills in connecting the backend with the frontend, also about integrating an LLM in our web app.
What's next for CodeAssist ๐๏ธ
- We wanted to add a terminal for running code but couldn't due to time constraints. It can be super helpful in real life.
- We would like to add more features like debugging, so it can be even more helpful for the developers out there.
Log in or sign up for Devpost to join the conversation.