Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
f38904c
feat: speech interview helper assistant
pratikjadhav2726 Jan 11, 2026
ee35927
feat: added conversations view with screenshot support for coding and…
pratikjadhav2726 Jan 11, 2026
7a50811
fix: cmd +m for toggle recording for ease
pratikjadhav2726 Jan 11, 2026
b7beff3
feat: add speech recognition model configuration and validation for O…
pratikjadhav2726 Jan 11, 2026
143915a
feat: enhance README with Speech Recognition Helper details and usage…
pratikjadhav2726 Jan 11, 2026
b185a56
feat: integrate ConversationCommands component for improved conversat…
pratikjadhav2726 Jan 11, 2026
1c2961e
refactor: optimize code splitting by lazy loading components and synt…
pratikjadhav2726 Jan 11, 2026
6325157
feat: implement candidate profile feature for personalized AI suggest…
pratikjadhav2726 Jan 20, 2026
becadf6
feat: enhance AnswerAssistant to utilize job description for tailored…
pratikjadhav2726 Jan 20, 2026
88bca12
Merge pull request #1 from pratikjadhav2726/dev
pratikjadhav2726 Jan 20, 2026
106d9a0
feat: extend AnswerAssistant to support multiple AI providers (OpenAI…
pratikjadhav2726 Jan 22, 2026
a9e2ac6
feat: enhance AI model management by centralizing configuration and v…
pratikjadhav2726 Jan 22, 2026
96cc214
feat: enhance support for speech recognition by adding Gemini models …
pratikjadhav2726 Jan 22, 2026
b0aa783
feat: add answer model configuration to support AI answer suggestions…
pratikjadhav2726 Jan 22, 2026
0a3e0ee
Merge pull request #2 from pratikjadhav2726/dev
pratikjadhav2726 Jan 22, 2026
6db613d
Update issue templates
pratikjadhav2726 Jan 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
54 changes: 51 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ All it takes is modest JavaScript/TypeScript knowledge and understanding of the
- πŸ€– AI-Powered Analysis: Automatically extracts and analyzes coding problems using GPT-4o
- πŸ’‘ Solution Generation: Get detailed explanations and solutions with time/space complexity analysis
- πŸ”§ Real-time Debugging: Debug your code with AI assistance and structured feedback
- πŸŽ™οΈ Speech Recognition Helper: Record and transcribe interview conversations with AI-powered answer suggestions
- 🎨 Advanced Window Management: Freely move, resize, change opacity, and zoom the window
- πŸ”„ Model Selection: Choose between GPT-4o and GPT-4o-mini for different processing stages
- πŸ”’ Privacy-Focused: Your API key and data never leave your computer except for OpenAI API calls
Expand All @@ -70,6 +71,7 @@ The application uses unidentifiable global keyboard shortcuts that won't be dete
- Delete Last Screenshot: [Control or Cmd + L]
- Process Screenshots: [Control or Cmd + Enter]
- Start New Problem: [Control or Cmd + R]
- Toggle Recording: [Control or Cmd + M] (Speech Recognition Helper)
- Quit: [Control or Cmd + Q]
- Decrease Opacity: [Control or Cmd + []
- Increase Opacity: [Control or Cmd + ]]
Expand All @@ -96,7 +98,7 @@ Note: The application is **NOT** invisible to:

- Node.js (v16 or higher)
- npm or bun package manager
- OpenAI API Key
- OpenAI API Key (required for all AI features including speech recognition)
- Screen Recording Permission for Terminal/IDE
- On macOS:
1. Go to System Preferences > Security & Privacy > Privacy > Screen Recording
Expand All @@ -106,6 +108,14 @@ Note: The application is **NOT** invisible to:
- No additional permissions needed
- On Linux:
- May require `xhost` access depending on your distribution
- Microphone Permission (required for Speech Recognition Helper)
- On macOS:
1. Go to System Preferences > Security & Privacy > Privacy > Microphone
2. Ensure that CodeInterviewAssist has microphone permission enabled
- On Windows:
- Windows will prompt for microphone access when first using the feature
- On Linux:
- May require PulseAudio or ALSA configuration depending on your distribution

## Running the Application

Expand Down Expand Up @@ -201,6 +211,9 @@ The packaged applications will be available in the `release` directory.
| Multi-language Support | βœ… | βœ… |
| Time/Space Complexity Analysis | βœ… | βœ… |
| Window Management | βœ… | βœ… |
| Speech Recognition | βœ… | βœ… (OpenAI Whisper) |
| AI Answer Suggestions | βœ… | βœ… (Context-aware) |
| Conversation History | βœ… | βœ… |
| Auth System | Required | None (Simplified) |
| Payment Processing | Required | None (Use your own API key) |
| Privacy | Server-processed | 100% Local Processing |
Expand All @@ -215,7 +228,8 @@ The packaged applications will be available in the `release` directory.
- Vite
- Tailwind CSS
- Radix UI Components
- OpenAI API
- OpenAI API (GPT-4o, GPT-4o-mini, Whisper)
- Web Audio API (for speech recording)

## How It Works

Expand Down Expand Up @@ -248,13 +262,28 @@ The packaged applications will be available in the `release` directory.
- Window remains invisible to specified screen sharing applications
- Start a new problem using [Control or Cmd + R]

6. **Language Selection
6. **Language Selection**

- Easily switch between programming languages with a single click
- Use arrow keys for keyboard navigation through available languages
- The system dynamically adapts to any languages added or removed from the codebase
- Your language preference is saved between sessions

7. **Speech Recognition Helper**

- Record interview conversations using your microphone with [Control or Cmd + M]
- Automatically transcribe audio to text using OpenAI's Whisper API
- Toggle between "Interviewer" and "You" (Interviewee) speaker modes
- Maintain conversation history with timestamps for both speakers
- Get AI-powered answer suggestions when the interviewer asks questions
- Suggestions are context-aware and consider:
- Previous conversation history
- Your previous answers for consistency
- Screenshot context (if coding problems are captured)
- View real-time transcription and suggestions in the Conversations view
- All audio processing happens locally; only transcription requests are sent to OpenAI
- Supports both coding interviews (with screenshot context) and behavioral interviews

## Adding More AI Models

This application is built with extensibility in mind. You can easily add support for additional LLMs alongside the existing OpenAI integration:
Expand All @@ -272,10 +301,29 @@ To add new models, simply extend the API integration in `electron/ProcessingHelp
- Problem Extraction: Analyzes screenshots to understand the coding problem
- Solution Generation: Creates optimized solutions with explanations
- Debugging: Provides detailed analysis of errors and improvement suggestions
- **Speech Recognition Model**: Configure the speech-to-text model for transcription:
- Currently supports OpenAI's Whisper-1 model
- Only available when using OpenAI as the API provider
- Configured in Settings > Speech Recognition Model
- **Language**: Select your preferred programming language for solutions
- **Window Controls**: Adjust opacity, position, and zoom level using keyboard shortcuts
- **All settings are stored locally** in your user data directory and persist between sessions

### Speech Recognition Helper Configuration

The Speech Recognition Helper uses OpenAI's Whisper API for transcription. To use this feature:

1. **API Provider**: Must be set to OpenAI (not Gemini or Anthropic)
2. **Speech Recognition Model**: Select "whisper-1" in Settings
3. **Microphone Access**: Grant microphone permissions when prompted
4. **Usage**:
- Press [Control or Cmd + M] to start/stop recording
- Toggle speaker mode between Interviewer and You (Interviewee)
- View transcribed conversation and AI suggestions in the Conversations view
- Suggestions automatically appear when interviewer questions are detected

**Note**: Speech recognition requires an active OpenAI API key with sufficient credits. Audio is processed locally and only sent to OpenAI for transcription. Conversation history is stored locally and never transmitted except for transcription requests.

## License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).
Expand Down
Loading
Loading