Inspiration
CodeMentor was inspired by the need to make code learning more accessible and efficient. We recognized that developers at all levels often struggle to understand complex code snippets quickly. By leveraging AI, we created a tool that provides instant, intelligent explanations of code in natural language, helping developers learn faster and debug more effectively.
What it does
CodeMentor is an AI-powered code explanation platform that allows users to:
- Paste code snippets and receive detailed AI explanations
- Understand code logic across multiple programming languages
- View code complexity ratings to gauge difficulty level
- Save explanation history for future reference
- Export explanations as formatted documents
- Share explanations with teammates or on social media
- Customize explanation depth based on their learning level
How we built it
Backend (Django REST API):
- Created a robust Python/Django REST framework API for code explanation requests
- Integrated Google's Gemini AI API for intelligent code analysis
- Implemented efficient request handling with proper error management
- Set up SQLite database for storing user history
Frontend (Next.js):
- Developed a responsive React-based UI with Next.js
- Styled with Tailwind CSS for a modern interface
- Implemented state management using React hooks and localStorage
- Created reusable components for code input and explanations
Infrastructure:
- Containerized both services using Docker
- Set up Docker Compose for local development
Challenges we ran into
- API integration complexity with different AI services
- Performance optimisation for lengthy explanations
- Browser storage limitations for history management
- Balancing simplicity with feature richness
Accomplishments that we're proud of
- Seamless full-stack integration
- Clean, maintainable code architecture
- Intelligent AI-powered explanation engine
- Intuitive user interface
- Production-ready Docker deployment
- Comprehensive feature set with history and export
- Fully responsive design
- Clear documentation and setup guides
What we learned
- API integration best practices and error handling
- Full-stack development with Django and Next.js
- UI/UX considerations for user feedback
- Database design for efficient data retrieval
- Docker and containerization basics
- Prompt engineering for better AI responses
- Component reusability in React
- The importance of thorough documentation
What's next for CodeMentor
- User authentication with saved explanations across devices
- Analytics dashboard showing learning patterns
- Multi-language UI support
- Interactive Q&A for follow-up questions
- Structured learning paths
- Support for multiple AI providers
- Real-time collaboration features
- Native mobile applications
- Enhanced syntax highlighting
- Performance and progress tracking
Log in or sign up for Devpost to join the conversation.