Grading code submissions often fail to reveal whether a student truly understands the underlying concepts or merely submitted an AI generated solution. Capture the full picture of student learning with Verbalize! Designed for professors, Verbalize is a web-based automated oral defense platform where students verbally explain their code logic and design choices through voice calls. It analyzes their answers to verify deep comprehension, ensuring grades reflect conceptual understanding rather than just working syntax.
- User Authentication with Signup/Signin
- File upload system
- Database integration for code submissions
- Question generation
- Notification and call system with Twilio
- Confidence score calculation
- Anti cheating system during calls
- Conversational agent that clarifies on responses
- ElevenLabs integration
| Week | Frontend Tasks | Backend Tasks |
|---|---|---|
| Week 1 |
|
|
| Week 2 |
|
|
| Week 3-4 |
|
|
| Week 4-5 |
|
|
| Week 5-6 |
|
|
| Week 7-8 |
|
|
| Week 9-10 |
|
|
Frontend
-
Next.js + Tailwind CSS
Backend
-
Frameworks
-
Supabase
-
APIs
-
Question generation for each student may take too long
- Use Groq to ensure fast response times
- Generate around 20 questions at once and choose a random subset of questions for each student at the cost of personalization
-
Follow up for certain questions
- Confidence Threshold Loop: If responses don't satisfy a certain threshold, generating follow up questions based on students' responses may be time consuming.
- For each question, generate follow up questions beforehand based on response categories such as deep, vague, incorrect, etc.
-
Either the frontend or backend team is falling behind
- If this happens, the best course would be to get some assistance from the other side until caught up.
- Verbal Check (Oral plagiarism detector, no code-specific grading)
- MOSS (Only checks similarity between submissions)
- TurnItIn/ZeroGPT (Does not work for code)
| Command | What it does |
|---|---|
| git init | Initalize a new Git repo |
| git clone "rep-url" | Clone a repo from a URL |
| git status | Show changes status |
| git add "file" | Add changes to staging, use "." for all |
| git commit -m "Descriptive Message" | Commit changes with a message |
| git push | Upload local repo content to a remote repo |
| git log | View commit history |
| git branch | Lists all the branches |
| git branch "branch-name" | Create a new branch |
| git checkout "branch-name" | Switch to a branch |
| git checkout -b "branch-name" | Combines the previous 2 commands |
| git merge "branch-name" | Merge changes from a branch |
| git branch -d "branch-name" | Delete a branch |
| git push origin "branch-name" | Push to branch |
| git pull origin "branch-name" | Pull updates from a specific branch |
| git pull | Fetch and merge changes |
| git fetch | Fetch changes without merging |
| git reset --hard HEAD | Discard changes |
| git revert | Revert changes in a commit |
- Harshitha Mahesh
- Lidegee Xi
- Rupesh Senthil
- Huy Nguyen
- Sunay Shehaan - Project Manager
- Bryce Duncan - Industry Mentor
