A modern web app for evaluating scanned answer sheets with text extraction, rubric-based scoring, and clear feedback.
Created and maintained by Divyansh Joshi.
- 📄 Document Upload - Support for question papers and answer sheets (images/PDF)
- 🔍 Text Extraction - OCR for scanned documents
- 📝 Question Analysis - Automatic extraction with rubrics and keywords
- 📊 Similarity Scoring - Compare student answers to model answers
- ✏️ Teacher Review - Manual override and feedback capabilities
- 🎨 Modern UI - Clean, responsive interface (Next.js + Tailwind CSS)
- 🎯 Three Usage Modes:
- Static Demo - Instant results with pre-loaded samples (no API needed)
- Free Demo - Live grading with our API (10 requests/hour, rate-limited)
- Custom API Key - Unlimited grading with your own Google AI key
- 📋 All-in-One View - Grade all questions on a single page
- 🖼️ Answer Sheet Preview - Side-by-side view of student work
- ⚡ Rate Limiting - Built-in protection for free demo mode
- Next.js 15, React 18, TypeScript
- Tailwind CSS, Radix UI, Lucide Icons
- Utility libs: Zod, date-fns, etc.
- Visit the live demo at gradewise.vercel.app
- Click "Try Demo" to explore with pre-loaded samples
- No API key or configuration needed!
-
Clone the repository
git clone https://github.com/oldregime/VitGrader.git cd VitGrader -
Install dependencies
npm install
-
Set up environment variables (optional for live grading)
cp env.example .env.local
Add your Google AI API key to
.env.local:GOOGLE_GENAI_API_KEY=your_api_key_hereGet a free API key from Google AI Studio
-
Run the development server
npm run dev
-
Open in browser Navigate to http://localhost:9002
src/
app/ # Next.js App Router pages and layout
components/ # Reusable UI components
hooks/ # App hooks
lib/ # Utilities
ai/ # Analysis flows (text extraction, scoring, feedback)
Entry point for the UI: src/app/page.tsx.
npm run dev– start dev servernpm run build– create production buildnpm run start– run production servernpm run lint– lint codebasenpm run typecheck– TypeScript checks
- Click the "Deploy" button above
- Connect your GitHub account
- Add your
GOOGLE_GENAI_API_KEYas an environment variable - Deploy!
Your app will be live at https://your-project.vercel.app
-
Build the project
npm run build
-
Test production build locally
npm start
-
Deploy to your platform of choice
- Vercel:
vercel deploy - Netlify: Connect your repo
- Self-hosted: Use the
.nextbuild output
- Vercel:
- Visit the homepage
- Click "Try Static Demo"
- View all 3 pre-loaded questions on one page
- Click "Grade All Questions" for instant results
- See answer sheet preview side-by-side
- Click "Try Free Demo" on homepage
- Get 10 free grading requests per hour
- Uses our API key (no setup needed)
- Perfect for testing live features
- Go to Settings page
- Enter your Google AI API key
- Upload custom question papers
- Upload student answer sheets
- Unlimited grading requests
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Divyansh Joshi
- Email: divyansh8065@gmail.com
- GitHub: @oldregime
If you find this project useful, please consider ⭐ starring the repo!
This project is licensed under the MIT License - see the LICENSE file for details.