v1.1.0 — Question Shuffling, Student Progress & Node.js 24
What's New in v1.1.0
✨ New Features
🔀 Question Shuffling
- Questions are now randomised on every new test attempt — students see a different order each time they take the same chapter test
- The question bank is generated once and cached as before; only the presentation order changes per session
📊 Student Progress (Admin Panel)
- New Student Progress section in the Admin Dashboard
- See every student's test attempts in one searchable, paginated table (10 rows per page)
- Columns: Student · Chapter · Grade/Board · Questions answered/total · Score · Time taken · Date · Status
- Click View on any row to open a detailed breakdown — score summary, percentage, time, and per-question view with covered/missed points and feedback
- Filter by student name/chapter and by status (active, completed, expired)
🖼️ Logo
- ChapterWise logo is now committed to the repository (
frontend/public/logo.png) — no manual file copy needed after cloning - Logo is displayed in the header of every page (student login, selection, test, admin)
⚙️ Infrastructure & Fixes
Node.js 24 LTS
- Project now requires Node.js 24.14.0+ (upgraded from 18+)
.nvmrcadded at root andfrontend/— runnvm useto automatically switch to the correct versionenginesfield added tofrontend/package.jsonenforcing Node ≥24.14.0 and npm ≥10
Production Deployment Fix
- Added module-level
app = create_app()toapp.pyso gunicorn can locate the application object correctly - Increased gunicorn worker timeout to 120 seconds (from default 30s) to accommodate Anthropic API response times
- Added matching
proxy_read_timeout 120sto nginx config
Developer Experience
.claude/launch.jsonadded — definesflask-backendandvite-frontendserver configurations for one-click local startup
📝 Documentation
- README updated: React 19, React Router v7, Node.js 24.14.0+
- Student Progress and question shuffling documented in features list
GET /api/admin/student-progressadded to API reference- Removed manual logo setup step (logo now in repo)
- Corrected project structure descriptions
Upgrade Notes
If you are running v1.0.0 on a server:
- Pull the latest code
- Run
npm install && npm run buildin thefrontend/directory - Restart the gunicorn service
- Update your gunicorn service to include
--timeout 120if you experience timeouts during question generation
No database migrations are required — all new features use existing tables.
Full Changelog
5f27097Shuffle questions on each new test attemptd178c54Add student progress section to admin panel6ce32eaAdd logo image files to fix missing logo across all pages01046cdAdd module-level app = create_app() for gunicorn compatibility07ab31dUpgrade Node.js requirement to v24.14.0 LTS9057200Add launch.json for local dev server configurationfbd623dUpdate README to reflect Node.js 24.14.0+ requiremente461a7aUpdate README with accurate versions and new features