Skip to content

Repository files navigation

DevSensei

An AI-powered learning platform for CS students. Practice coding, debugging, interviews, quizzes, riddles, and code reviews in one focused workspace.

React TypeScript Vite Express Tailwind CSS Gemini Netlify

What it does

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.

Live Demo

https://dev-sensei.netlify.app/

Screenshots

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

Tech Stack

  • 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

Getting Started

  1. Install dependencies.
pnpm install
  1. Create your environment file.
cp .env.example .env
  1. Add your Gemini API key.
GEMINI_API_KEY=your_new_key_here
PING_MESSAGE=pong
  1. Start the app.
pnpm dev

Deployment

The 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

API Overview

The app exposes these AI-backed routes:

  • GET /api/health
  • GET /api/riddles
  • GET /api/coding-question
  • POST /api/coding-check
  • GET /api/quiz
  • POST /api/explain-error
  • POST /api/mock-interview
  • POST /api/roast-code

Security Notes

  • Never commit .env.
  • If a key is exposed, revoke it immediately and generate a new one.
  • Commit only .env.example.

Author

Aniruddha

About

AI-powered learning platform for CS students — coding challenges, mock interviews, code reviews, quizzes, and error explanations in one workspace.

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages