Inspiration
We were inspired by the struggles we faced during our own coding interview preparations. Traditional study methods felt disconnected and impersonal - watching YouTube videos, reading documentation, and practicing on generic platforms didn't provide the personalized feedback we needed. We noticed that many students, especially those with hearing impairments or different learning styles, were underserved by existing solutions. We wanted to create an AI-powered platform that could provide personalized, accessible, and interactive learning experiences for everyone preparing for technical interviews.
What it does
CodeNova is an AI-powered coding interview platform with three core features: AI Interviewer: Practice coding challenges with an intelligent interviewer that provides real-time feedback and evaluation STEM PDF Tutor: Upload academic documents (PDFs/DOCX) and get AI-powered explanations, practice questions, and personalized tutoring sessions AI Assistant: Voice-enabled assistant that answers questions with video explanations and provides full transcript support for accessibility The platform includes real-time code execution, modern full-screen UI, and comprehensive accessibility features to make technical interview prep inclusive for all learners.
How we built it
Frontend: Next.js 15 with React 19 for the modern web interface TypeScript for type safety and better development experience Tailwind CSS with custom neon styling for the futuristic design Custom components for animated hero sections and floating particles Responsive design optimized for full-screen learning experiences Backend: Node.js with Express.js for the API server Socket.io for real-time communication MongoDB with Mongoose for data persistence JWT authentication for secure user sessions Multer for file upload handling Judge0 integration for code execution AI service integration for intelligent responses Key Integrations: Voice recording APIs for speech-to-text functionality File upload system for document processing Real-time feedback systems Accessibility features including transcript generation
Challenges we ran into
MongoDB Connection Issues: Initially struggled with local MongoDB setup, requiring us to implement graceful error handling and provide multiple database options (local, Atlas, or continue without DB) File Upload Complexity: Implementing secure file uploads with proper validation, size limits, and error handling while maintaining a smooth user experience Real-time Communication: Setting up Socket.io for live feedback and ensuring proper connection handling between frontend and backend Accessibility Implementation: Creating comprehensive transcript support and ensuring the platform works for users with different abilities Full-screen Layout Optimization: Making the AI assistant page work perfectly without scrolling while maintaining responsive design across different screen sizes Voice Integration: Implementing microphone access and speech-to-text functionality with proper error handling and user feedback
Accomplishments that we're proud of
Complete Full-Stack Application: Successfully built a production-ready application with authentication, file uploads, and real-time features Accessibility-First Design: Implemented comprehensive accessibility features including transcript support and voice interaction Modern UI/UX: Created a sleek, futuristic interface with smooth animations and responsive design Robust Error Handling: Implemented graceful error handling for database connections, file uploads, and API failures Real-time Features: Successfully integrated Socket.io for live communication and feedback File Processing System: Built a complete file upload and processing system with Multer integration Voice-Enabled Interface: Created an intuitive voice interaction system for the AI assistant
What we learned
Database Flexibility: The importance of graceful degradation when external services aren't available Accessibility Matters: How small features like transcript support can make a huge difference for users User Experience: The value of loading states, error messages, and clear feedback in complex applications File Handling: Best practices for secure file uploads, validation, and storage Real-time Communication: How to properly implement and handle WebSocket connections Modern React Patterns: Advanced React hooks, state management, and component architecture Full-Stack Integration: How to seamlessly connect frontend and backend systems
What's next for CodeNova
Mobile App: Develop React Native mobile application Advanced AI Features: Implement code review, algorithm explanation, and personalized learning paths Collaboration Tools: Add team study features and peer review capabilities Integration APIs: Connect with popular coding platforms (LeetCode, HackerRank)
Built With
- judge0
- jwt
- mongodb
- multer
- nextjs
- node.js
- react
- socket.io
- tailwindcss
- typescript
Log in or sign up for Devpost to join the conversation.