An open-source study assistance tool for software engineers preparing for technical interviews. Loopy simulates realistic interview experiences with AI-driven questions and feedback.
- Interactive Technical Interviews: Experience realistic interview practice with AI-driven questions and feedback
- Text-Based by Default: Type your answers for maximum accessibility and ease of use
- Optional Voice Mode: Switch to voice mode for a more immersive experience with speech input/output
- Real-time Feedback: Receive detailed evaluation and feedback on your responses
- Multiple Technical Topics: Choose from a wide range of software engineering topics
- Open Source: Free to use and contribute to
- Select a Topic: Choose from various technical areas like algorithms, system design, networking, etc.
- Read the Question: The AI interviewer presents you with a technical question
- Type Your Answer: Respond to the question in a text box
- Get Feedback: Receive an evaluation of your answer with specific feedback and improvement suggestions
- Continue the Interview: Answer follow-up questions or request a new question
- Enable Voice Mode: Click the voice mode toggle in the header
- Listen to Questions: The AI interviewer asks you questions using text-to-speech
- Respond Verbally: Record your answer by speaking naturally
- Get Feedback: Receive the same detailed evaluation and feedback
- Continue the Interview: The conversation flow works the same as text mode
- Create project foundation with Next.js
- Design the interview interface
- Implement the Q&A flow
- Set up question generation and answer evaluation
- Implement text-based input/output as default
- Improve visual feedback during different interview stages
- Add interview timers and progress tracking
- Create user dashboard for tracking progress
- Implement accessibility features
- Add optional voice mode with speech recognition and synthesis
- Create toggle for switching between modes
- Ensure graceful fallbacks when permissions or browser capabilities are limited
- Optimize voice interaction experience
- Add difficulty levels for questions
- Implement interview session scoring
- Create personalized improvement recommendations
- Add coding-specific interview modes
Loopy includes questions covering topics such as:
-
System Design:
- How would you handle 100,000,000,000 file updates?
- How would you design a system to store 100TB of data?
-
Networking:
- What's the difference between TCP and UDP?
- Explain how DNS resolution works
-
Concurrency:
- What's the difference between a mutex and a semaphore?
- Explain deadlocks and how to prevent them
-
Databases:
- NoSQL vs SQL databases - when would you use each?
- Explain database indexing and its importance
-
Infrastructure:
- What are the differences between containers and VMs?
- Explain the concept of infrastructure as code
- Frontend: Next.js with React and TypeScript
- Styling: Tailwind CSS for responsive design
- AI Integration: Integration with Groq API for question generation and answer evaluation
- Speech Processing (optional):
- Web Speech API for text-to-speech
- Whisper API for transcription
- Deployment: Vercel
# Install dependencies
npm install
# or
pnpm install
# Run the development server
npm run dev
# or
pnpm devOpen http://localhost:3000 in your browser to see the application.
Loopy is an open-source project and we welcome contributions! Please feel free to submit a PR or open an issue if you have ideas for improvement.
This project is open-sourced under the MIT license.