An AI-powered learning platform for CS students. Practice coding, debugging, interviews, quizzes, riddles, and code reviews in one focused workspace.
DevSensei combines several study tools into one app so users can switch from practice to feedback without leaving the platform.
- Coding challenges with language and difficulty selection.
- AI-driven code review in roast or mentor mode.
- Error explanations for JavaScript, Python, Java, and C++.
- Multi-turn mock interviews with scoring and feedback.
- Quizzes and riddles with fallback content when AI is unavailable.
https://dev-sensei.netlify.app/
Add screenshots under docs/screenshots/ to make the repo feel more complete:
- Home:
docs/screenshots/home.png - Coding Challenge:
docs/screenshots/coding.png - Mock Interview:
docs/screenshots/interview.png
- Frontend: React, TypeScript, Vite, React Router, React Query
- UI: Tailwind CSS, shadcn/ui, Radix UI, Monaco Editor
- Backend: Express for local development, Netlify Functions for production
- AI: Google Gemini 2.5 Flash
- Validation: Shared Zod schemas across client and server
- Install dependencies.
pnpm install- Create your environment file.
cp .env.example .env- Add your Gemini API key.
GEMINI_API_KEY=your_new_key_here
PING_MESSAGE=pong- Start the app.
pnpm devThe repository is configured for Netlify.
- Build command:
npm run build:client - Publish directory:
dist/spa - Functions directory:
netlify/functions - Required environment variable:
GEMINI_API_KEY
The app exposes these AI-backed routes:
GET /api/healthGET /api/riddlesGET /api/coding-questionPOST /api/coding-checkGET /api/quizPOST /api/explain-errorPOST /api/mock-interviewPOST /api/roast-code
- Never commit
.env. - If a key is exposed, revoke it immediately and generate a new one.
- Commit only
.env.example.
Aniruddha
- GitHub: https://github.com/StreetCoder02