CH 25Elite

Handwriting AI & Writing Development Platform

Every Student Receives A Personalized AI Writing Coach That Continuously Improves Writing Skills Throughout Their Educational Journey. Combines Gemini vision OCR/quality analysis with teacher-authoritative bulk assignment evaluation. Entirely Elite tier.

Implementation note: digital ink/stylus capture, animated stroke-by-stroke demonstrations, and interactive whiteboard integration are deferred — paper-photo upload is the shipped capture method, matching the precedent set by Storybook AI (Chapter 24) of deferring native-dependency/asset-heavy features. Bulk teacher uploads process sequentially in-process (no message-queue infrastructure exists in this codebase yet) with a polled session status, rather than a background worker queue.

Features

Handwriting Capture & AI Analysis

Elite
  • Camera/file upload (JPG, PNG, PDF) analyzed via Gemini vision — OCR digitization plus 5 scored dimensions: legibility, formation, spacing, alignment, consistency
  • Falls back gracefully with a queued-analysis message if Gemini is unavailable, matching Storybook AI's fallback pattern
  • Supports English, Hindi, Telugu, Tamil, Kannada, and Malayalam scripts
  • Web: /dashboard/student/handwriting/upload — Mobile: handwriting-upload.tsx (camera + gallery via expo-image-picker)

Rolling Writing Profile & Learning Plans

Elite
  • HandwritingProfile recomputes a rolling average from the student's last 10 samples after every evaluation — no single bad session drastically moves the score
  • Beginner / Intermediate / Advanced level and improving/stable/declining trend, derived automatically from scores
  • AI-generated personalized learning plan (target areas, weak letters, exercises, daily practice minutes) — requires at least one evaluated sample first
  • Web: /dashboard/student/handwriting, /handwriting/practice — Mobile: handwriting.tsx, handwriting-practice.tsx

AI Writing Copilot & Practice Sheets

Elite
  • Conversational coach answers questions like "Why is my score low?" or "Give me practice exercises" using the student's live profile as context
  • Personalized practice-sheet PDF generation targeting the student's specific weak letters (via pdfkit, reusing the existing document-generation utility)
  • Web: /dashboard/student/handwriting/copilot — Mobile: handwriting-copilot.tsx

Teacher Bulk Assignment Evaluation

Elite
  • Teacher uploads a batch of handwritten work (up to 40 images); each is OCR'd and AI-scored sequentially, session status (uploaded → processing → ready_for_review → completed) is polled by the client
  • AI output is advisory only — the teacher reviews, edits, and finalizes every score/feedback before it becomes the official record
  • Finalized evaluations create real HandwritingCapture records, feeding the exact same profile/badge/intervention pipeline as self-uploads
  • Web: /dashboard/teacher/handwriting/evaluate — Mobile: handwriting-evaluate.tsx

Early Intervention Engine

Elite
  • Flags a student only after 3+ consecutive weak evaluations (never a single session) — teacher and parent are both notified
  • Nightly cron re-scans every active profile in case scores decayed without a fresh capture; auto-clears the flag once recovery is sustained
  • No medical diagnosis is made — flags recommend a referral, not a diagnosis, per the BRD's business rule
  • Web: /dashboard/teacher/handwriting/at-risk — Mobile: handwriting-at-risk.tsx

Writing Analytics, Badges & Growth Passport

Elite
  • Student, class, and school-level analytics — score trends, common formation errors, level distribution, grade & language comparisons
  • Milestone badges (level-up, excellence threshold) auto-issued via the existing DigitalBadge model (Chapter 23) and surfaced on the student's portfolio
  • Parent Writing Dashboard: current score, trend, recent samples, and badges — weekly digest notification summarizes the week's activity
  • Web: /dashboard/teacher/handwriting/analytics, /dashboard/admin/handwriting, /dashboard/parent/handwriting

API Reference — Chapter 25

Sample Upload, Profile & History (Elite)

POST/api/handwriting/upload

Student uploads a handwriting sample for AI analysis

GET/api/handwriting/:captureId

Get a single evaluated capture

GET/api/handwriting/profile/:studentId

Get a student's rolling handwriting profile

GET/api/handwriting/history/:studentId

Evaluation history for a student

GET/api/handwriting/badges/:studentId

Writing milestone badges

Learning Plan, Practice Sheets & Copilot (Elite)

GET/api/handwriting/plan/:studentId

Get the student's current learning plan

POST/api/handwriting/plan/generate

Generate/refresh a personalized learning plan

POST/api/handwriting/practice-sheet

Generate a personalized practice-sheet PDF

POST/api/handwriting/copilot

AI Writing Copilot conversational query

Teacher Bulk Evaluation & Intervention (Elite)

POST/api/handwriting/evaluation-session

Teacher creates a bulk evaluation session

POST/api/handwriting/evaluation-session/:sessionId/upload

Upload up to 40 files for AI pre-scoring

GET/api/handwriting/evaluation-session/:sessionId

Get AI-scored results for teacher review

PATCH/api/handwriting/evaluation-session/:sessionId/finalize

Teacher finalizes scores — becomes the official record

GET/api/handwriting/at-risk

Students flagged for early intervention

Analytics & Parent Dashboard (Elite)

GET/api/handwriting/analytics/student/:studentId

Student trend, weak dimensions

GET/api/handwriting/analytics/class

Teacher: level distribution, common errors, at-risk count

GET/api/handwriting/analytics/school

Admin: grade-level trends, language-wise performance

GET/api/handwriting/parent/child/:studentId

Parent Writing Dashboard overview (parentOf-checked)

Frontend Pages

PathRoleDescriptionTier
/dashboard/student/handwritingStudentHandwriting Home — profile score, quick links, recent samplesElite
/dashboard/student/handwriting/uploadStudentCamera/file upload for AI analysisElite
/dashboard/student/handwriting/progressStudentScore trends, dimension breakdown, badgesElite
/dashboard/student/handwriting/practiceStudentLearning plan & practice sheet generationElite
/dashboard/student/handwriting/copilotStudentConversational AI Writing CopilotElite
/dashboard/student/handwriting/storybookStudentStorybook Writing Mode — handwritten story responsesElite
/dashboard/teacher/handwritingTeacherHandwriting AI home & quick statsElite
/dashboard/teacher/handwriting/evaluateTeacherBulk handwritten assignment evaluationElite
/dashboard/teacher/handwriting/analyticsTeacherClass writing performance analyticsElite
/dashboard/teacher/handwriting/at-riskTeacherEarly intervention flagged studentsElite
/dashboard/parent/handwritingParentChild's writing dashboard, progress & badgesElite
/dashboard/admin/handwritingAdmin / Super AdminSchool-wide writing analytics & at-risk overviewElite

Mobile

Under app/(student)/:handwriting.tsx (profile & recent samples),handwriting-upload.tsx (camera capture via expo-image-picker),handwriting-progress.tsx,handwriting-practice.tsx, andhandwriting-copilot.tsx. Under app/(teacher)/:handwriting.tsx (entry point),handwriting-evaluate.tsx, andhandwriting-at-risk.tsx. Underapp/(parent)/:handwriting.tsx, built on the pre-existinguseChildSwitcher hook. Admin school-wide analytics is web-only, consistent with other chapters' moderation/analytics surfaces.