Skip to content
salmasiddiquaPublic

About

Live AI-powered exam-prep platform built with React, Flutter, Express, MongoDB, Redis, Socket.IO, Razorpay and Claude/RAG.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stellar

Stellar is a live AI-powered exam-prep platform for CBSE, ICSE and AP SSC learners across grades 1-10.

Live product: https://stellaredu.in

The platform combines adaptive practice, AI explanations, real-time competition rooms, progress analytics, parent/teacher workflows, payments and offline-capable web/mobile clients. It is built as a full-stack product with a React web client, Flutter mobile app, Express API, MongoDB, Redis, Socket.IO and Claude-backed RAG workflows.

Tech Stack

Area Technologies
Web React, Vite, React Router, Zustand, Axios, PWA service worker
Mobile Flutter
Backend Node.js, Express, REST APIs, Joi validation, JWT auth
Data MongoDB, Mongoose, Redis
Realtime Socket.IO
AI/RAG Claude API, retrieval over NCERT/topic content, cache-first AI pipeline
Payments Razorpay subscriptions and coupons
Infra/Ops Docker, GitHub Actions, PM2, Sentry, k6 load testing

Product Highlights

  • Adaptive practice engine with board/grade/topic routing and prerequisite-aware recommendations.
  • AI explanations that use RAG over curriculum content and student mistake context.
  • Real-time Socket.IO competition rooms and live leaderboard flows.
  • Exam engine with mock papers, score prediction and Z-score normalization.
  • Parent, teacher, school-group and admin workflows.
  • Razorpay subscription billing with coupons and trial support.
  • Offline-capable PWA and a Flutter mobile client sharing the same API.
  • CI workflows, automated tests, smoke tests and k6 load testing.

Architecture

Stellar architecture

React Web (Vite/PWA)       Flutter Mobile
          |                     |
          +------ REST API -----+
                     |
              Express API
       JWT, CSRF, validation, rate limits
         |          |           |
      MongoDB     Redis      Socket.IO
   users/content  cache      live rooms
         |
   RAG content + student context
         |
      Claude API

AI/RAG Evidence

The AI path is designed to keep latency and cost controlled before calling the model:

  1. Correct-answer short-circuit avoids model calls when the answer is already deterministically known.
  2. Stored solutions and static mistake-pattern maps answer common cases without using Claude.
  3. Redis and MongoDB caches reuse validated explanations across students.
  4. RAG retrieval injects the most relevant NCERT/topic chunks into explanation prompts.
  5. Redis-backed per-user and global token budgets guard daily/monthly spend.
  6. Model failover returns a controlled fallback instead of crashing the request path.
  7. Output guardrails check generated content before it reaches students.
  8. PASS/FAIL verification rejects poor AI-generated questions before they enter the pool.

Relevant code areas:

  • ai-learning-backend/backend/services/aiService.js
  • ai-learning-backend/backend/utils/ragStore.js
  • ai-learning-backend/backend/utils/featureFlags.js
  • ai-learning-backend/backend/scripts/buildRagIndex.js
  • ai-learning-backend/backend/scripts/buildRagFromTopicContent.js
  • ai-learning-frontend/frontend/src/components/DoubtChat.jsx

Screenshots

Landing Personalized Path
Stellar landing page Stellar product story
Adaptive System Sign In
Stellar adaptive system Stellar sign-in screen
Start Flow Mobile
Stellar onboarding start Stellar mobile layout

Authenticated dashboard, practice, analytics and competition-room screenshots should be added with a demo account or anonymized local data.

Quick Start

Prerequisites:

  • Node.js 20+
  • MongoDB local or Atlas
  • Redis optional for local development
  • Anthropic/Claude API key for AI features

Backend:

cd ai-learning-backend/backend
npm install
cp .env.example .env
npm run dev

Frontend:

cd ai-learning-frontend/frontend
npm install
npm run dev

Mobile:

cd ai-learning-mobile
flutter pub get
flutter run

Common backend environment variables:

Variable Purpose
MONGO_URI MongoDB connection string
JWT_SECRET Access-token signing secret
JWT_REFRESH_SECRET Refresh-token signing secret
ANTHROPIC_API_KEY Claude API key
REDIS_URL Redis cache/session/token-budget store
RAZORPAY_KEY_ID Razorpay checkout key
RAZORPAY_KEY_SECRET Razorpay server secret
FRONTEND_URL Allowed frontend origin

Keep real values in .env, GitHub Actions secrets or the hosting provider's secret store. Do not commit them.

Tests And Quality

Backend:

cd ai-learning-backend/backend
npm test
npm run test:integration

Frontend:

cd ai-learning-frontend/frontend
npm test
npm run test:e2e

Load test:

k6 run load-tests/practice-session.js

CI:

  • .github/workflows/ci.yml
  • .github/workflows/health-check.yml
  • .github/workflows/prod-deploy.yml
  • .github/workflows/staging-deploy.yml

Security Hygiene

The public repo is configured to ignore local secrets and generated artifacts:

  • .env
  • .env.production
  • backend .env
  • frontend .env
  • test results
  • Playwright reports
  • local AI/editor tooling
  • private security notes
  • build caches and generated graph artifacts

Sensitive runtime values should be stored only in GitHub Secrets or deployment environment variables:

  • MongoDB URI
  • Claude/Anthropic key
  • Razorpay key secret
  • JWT secrets
  • VAPID private key
  • SMTP credentials
  • Sentry DSN

Security-related implementation areas:

  • JWT and refresh-token-family tracking
  • CSRF double-submit protection
  • Helmet security headers
  • rate limiting
  • Joi validation
  • bcrypt password hashing
  • role-based admin middleware
  • AI output guardrails

Repository Structure

.
|-- ai-learning-backend/backend/   # Express API, services, models, routes, tests
|-- ai-learning-frontend/frontend/ # React/Vite web app
|-- ai-learning-mobile/            # Flutter mobile client
|-- load-tests/                    # k6 load tests
|-- scripts/                       # deployment and smoke-test scripts
|-- docs/                          # public project docs and assets
|-- docker-compose.yml
`-- README.md

Docs

Public docs live under docs/:

License

Copyright (c) Salma Siddiqua. Source is shared for portfolio review; no license is granted for reuse.

About

Live AI-powered exam-prep platform built with React, Flutter, Express, MongoDB, Redis, Socket.IO, Razorpay and Claude/RAG.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages