Overview
This prompt aims to guide developers in creating a React-based AI interview interface with specific functionalities. Programmers and developers working on interactive web applications will benefit from these detailed instructions.
Prompt Overview
Purpose: This prompt aims to guide the generation of a React-based AI Interview session interface.
Audience: The intended audience includes developers familiar with React and WebSocket technologies.
Distinctive Feature: It emphasizes a single-tab experience for focused user interaction during the interview process.
Outcome: The expected outcome is a fully functional interface that manages real-time AI interactions seamlessly.
Quick Specs
- Media: Text
- Use case: Generation
- Industry: Content & Media Creation, Development Tools & DevOps, Property Development
- Techniques: Decomposition, Role/Persona Prompting, Structured Output
- Models: Claude 3.5 Sonnet, Gemini 2.0 Flash, GPT-4o, Llama 3.1 70B
- Estimated time: 5-10 minutes
- Skill level: Intermediate
Variables to Fill
- [interviewId] – Interviewid
- [interviewId, userId] – Interviewid, Userid
- [userId] – Userid
Example Variables Block
- [interviewId]: 7
- [userId]: user123
The Prompt
Implement a React-based AI Interview session interface that manages interview state and interaction entirely within a single browser tab for a focused user experience.
**Details and Requirements:**
– State Management:
– Use in-memory state or URL-parameterized routing to store and pass the [interviewId] immediately once the interview starts.
– Pass [interviewId] down through component props or React context.
– Ensure it resets or clears when the interview ends, is left, or canceled.
– UI Behavior:
– Upon clicking the “Start Interview” button:
– Overlay or expand the current tab’s UI to fullscreen.
– Focus the user on the interview session without opening a new tab.
– WebSocket Connection:
– Establish and manage a WebSocket connection to the interview server at:
– `ws` endpoint: ‘http://localhost:8083/ws’ when the interview starts.
– Subscribe to the topic:
– `/topic/interview.[interviewId]` for real-time messages.
– Initial Command:
– Send the initial start command to:
– `/app/interview.start` with payload including [interviewId] and [userId] immediately after connection.
– Bi-Directional Communication Protocol:
– During the interview session:
– Display all AI-generated interview questions or responses in an “AI Transcript” area.
– Use text-to-speech to read AI messages aloud.
– Once TTS finishes, activate the user’s microphone for live speech transcription in a “User Transcript” area.
– After 10 seconds of silence, automatically send the user’s transcribed answer to:
– `/app/interview.answer` via WebSocket, appending it to the “User Transcript”.
– Repeat question-answer cycles until the AI sends an END message.
– Visual Indicators:
– Provide indicators such as displaying “Listening…” during microphone activation.
– UI Separation:
– Ensure the interview session UI clearly separates “AI Transcript” and “User Transcript” areas for easy conversation tracking.
– Interview ID Retrieval:
– The [interviewId] for this session is obtained from the final form submission response, e.g.:
“`json
{ “interviewId”: 7, “status”: “READY”, “role”: “Java Developer”, “experienceLevel”: “MID”, “duration”: 10 }
“`
– WebSocket API Endpoints:
– Include calls to the following endpoints:
– Start interview: `/app/interview.start`
– Send user answers: `/app/interview.answer`
– End interview: `/app/interview.end`
– Tab Exclusivity:
– All WebSocket communication and UI updates must occur exclusively within this single tab and the expanded interview window.
**Steps:**
1. Capture and store [interviewId] immediately at interview start.
2. On “Start Interview” button click, overlay/expand interview UI in the same tab.
3. Initiate WebSocket connection to ‘http://localhost:8083/ws’.
4. Subscribe to ‘/topic/interview.[interviewId]’.
5. Send ‘/app/interview.start’ with [interviewId] and [userId].
6. Display AI Transcript area and User Transcript area.
7. For each AI message:
– Append to AI Transcript.
– Use text-to-speech to speak the message aloud.
– On TTS end, activate the microphone and show “Listening…” in User Transcript.
8. Live transcribe user speech in User Transcript.
9. After 10 seconds of silence, send the answer to ‘/app/interview.answer’ and append to User Transcript.
10. Repeat the conversation cycle until receiving END message.
11. On interview finish or cancel, reset/clear stored [interviewId] and UI.
**Output Format:**
Provide a detailed system prompt for a language model that encapsulates the above instructions and requirements precisely. This should enable the generation of frontend code and WebSocket interaction logic to create the described AI Interview session within a React application. The prompt should be concise yet comprehensive, structured for clarity, and enable stepwise reasoning in the model’s response.
Screenshot Examples
How to Use This Prompt
- [interviewId]: Unique identifier for the interview session.
- [userId]: Identifier for the user participating in the interview.
- [wsEndpoint]: WebSocket server connection URL.
- [aiTranscript]: Area displaying AI-generated questions and responses.
- [userTranscript]: Area for transcribing user responses.
- [TTS]: Text-to-speech functionality for AI messages.
- [silenceTimeout]: Duration to wait before sending user answers.
- [UIOverlay]: Fullscreen UI overlay for focused interview experience.
Tips for Best Results
- State Management: Use in-memory state or URL parameters to manage [interviewId] throughout the session.
- UI Behavior: Expand the UI to fullscreen on “Start Interview” to maintain focus within a single tab.
- WebSocket Connection: Connect to ‘http://localhost:8083/ws’ and subscribe to ‘/topic/interview.[interviewId]’ for real-time updates.
- Bi-Directional Communication: Implement TTS for AI messages and live transcription for user responses, sending answers after 10 seconds of silence.
FAQ
- What is the purpose of the WebSocket connection?
The WebSocket connection facilitates real-time communication between the client and the interview server. - How is the interviewId managed during the session?
The interviewId is stored in memory or passed via URL parameters and cleared after the interview ends. - What happens when the user clicks 'Start Interview'?
The UI expands to fullscreen, focusing the user on the interview without opening a new tab. - What is the role of text-to-speech in the interview?
Text-to-speech reads AI messages aloud, enhancing user engagement and interaction during the interview.
Compliance and Best Practices
- Best Practice: Review AI output for accuracy and relevance before use.
- Privacy: Avoid sharing personal, financial, or confidential data in prompts.
- Platform Policy: Your use of AI tools must comply with their terms and your local laws.
Revision History
- Version 1.0 (February 2026): Initial release.


