A technical interview tool that goes beyond LeetCode. Instead of abstract puzzles, candidates face a real bug in a real codebase, and are evaluated not only on their ability to fix it, but on how they communicate under pressure.
| Session Selection & Status | Live Candidate Progress Monitoring |
|---|---|
![]() |
![]() |
| Stage 1: Coding Challenge | Stage 2: Team Collaboration |
|---|---|
![]() |
![]() |
The interviewer creates a session by selecting a job role. The backend calls the Gemini API to generate a small code snippet(with chosen language by interviewer) with an intentional bug appropriate for that role. The candidate receives a link and has 10 minutes to find the bug, fix it, and explain what went wrong.
If time runs out, or the candidate completes stage 1, a second stage unlocks: a cosmetic Slack-like workspace where the candidate can message the team, ask for help, and demonstrate that they know how to communicate a problem even when they can't solve it alone. The interviewer monitors everything in real time from their dashboard.
When the session ends, all data is permanently deleted.
- Frontend: React, TypeScript, Tailwind CSS, Monaco Editor
- Backend: C# with ASP.NET Core Web API
- Database: SQL Server with Entity Framework Core
- AI: Google Gemini API
You can run this project either using Docker (recommended for quick setup) or locally by running the backend and frontend services separately.
Docker Compose automatically spins up the database (SQL Server), the backend API, and the frontend web app with a single command.
- Docker Desktop installed and running.
-
Configure Environment Variables: Copy the
.env.examplefile in the root directory to.env:cp .env.example .env
Open the
.envfile and fill in your details:AUTH_PASSWORD: The password you will use to log in to the interviewer dashboard.GEMINI_API_KEY: Your Google Gemini API key (get one for free at aistudio.google.com).
-
Spin up the Containers: In the root directory, run:
docker compose up --build
-
Access the Application:
- Interviewer / Candidate Web Client: http://localhost:5173
- Backend API Docs / Base: http://localhost:5138/api
If you prefer to run the services individually on your machine:
- .NET 10 SDK
- Node.js (v18+)
- SQL Server (local instance running)
- Google Gemini API key
- Navigate to the backend directory:
cd Backend/sim_backend - Create an
appsettings.Development.jsonfile inBackend/sim_backend/with the following configuration:{ "ConnectionStrings": { "DefaultConnection": "Server=localhost;Database=InterviewChallengeDB;Trusted_Connection=True;TrustServerCertificate=True;" }, "Auth": { "Password": "your_password_here" }, "Gemini": { "ApiKey": "your_gemini_api_key_here" } } - Apply Entity Framework migrations and start the backend:
dotnet ef database update dotnet run
- Navigate to the frontend directory:
cd Frontend - Install dependencies:
npm install
- Start the development server:
npm run dev
- Access the interviewer panel at http://localhost:5173 and log in using the password configured in
appsettings.Development.json.
appsettings.Development.jsonand.envare gitignored to prevent sensitive credentials leaking.- All session data is permanently deleted from the database when the interviewer clicks "End Session" in their dashboard.




