Paper-based tests |
Interactive CBT |
Single Correct |
Multiple Correct |
Numerical Type |
Matrix Match |
graph LR
A[⏰ Real-time Timer] --> B[🎯 Question Palette]
B --> C[🔖 Mark for Review]
C --> D[💾 Auto-save]
D --> E[📊 Live Stats]
style A fill:#4CAF50,stroke:#2E7D32,color:#fff
style B fill:#2196F3,stroke:#1565C0,color:#fff
style C fill:#FF9800,stroke:#E65100,color:#fff
style D fill:#9C27B0,stroke:#6A1B9A,color:#fff
style E fill:#F44336,stroke:#C62828,color:#fff
Subject-wise |
Time |
Accuracy |
Score |
Detailed |
%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#4CAF50','primaryTextColor':'#fff','primaryBorderColor':'#2E7D32','lineColor':'#2196F3','secondaryColor':'#FF9800','tertiaryColor':'#9C27B0'}}}%%
graph LR
A[📤 PDF Upload] --> B[🤖 AI Extraction]
B --> C[👁️ Review Interface]
C --> D[⚙️ Test Config]
D --> E[🎮 CBT Interface]
E --> F[📊 Results]
style A fill:#4CAF50,stroke:#2E7D32,stroke-width:3px,color:#fff
style B fill:#2196F3,stroke:#1565C0,stroke-width:3px,color:#fff
style C fill:#FF9800,stroke:#E65100,stroke-width:3px,color:#fff
style D fill:#9C27B0,stroke:#6A1B9A,stroke-width:3px,color:#fff
style E fill:#F44336,stroke:#C62828,stroke-width:3px,color:#fff
style F fill:#00BCD4,stroke:#00838F,stroke-width:3px,color:#fff
%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#FF5722','primaryTextColor':'#fff','primaryBorderColor':'#D84315','lineColor':'#FFC107','secondaryColor':'#8BC34A','tertiaryColor':'#3F51B5'}}}%%
graph LR
A[📤 PDF Upload] --> B[✂️ PDF Cropper]
B --> C[✍️ Manual Crop]
C --> D[📦 Assembly]
D --> E[⚙️ Test Config]
E --> F[🎮 CBT Interface]
style A fill:#FF5722,stroke:#D84315,stroke-width:3px,color:#fff
style B fill:#FFC107,stroke:#F57C00,stroke-width:3px,color:#000
style C fill:#8BC34A,stroke:#558B2F,stroke-width:3px,color:#fff
style D fill:#3F51B5,stroke:#283593,stroke-width:3px,color:#fff
style E fill:#9C27B0,stroke:#6A1B9A,stroke-width:3px,color:#fff
style F fill:#F44336,stroke:#C62828,stroke-width:3px,color:#fff
|
Nuxt 4 |
TypeScript |
Tailwind CSS |
Dexie |
Gemini AI |
+ 🔐 AES-256 Encryption for sensitive data
+ 🛡️ GDPR Compliant with data rights
+ 📝 Comprehensive audit logging
+ 🔒 Client-side processing (data stays local)
+ 🚫 No tracking or analytics
+ ✅ Open source & transparent✨ No installation required • Works on any device • Always up-to-date
Perfect for organisations who want 100% privacy and offline practice!
|
Unzip the file |
Run local server |
localhost:2025 |
Quick Setup Commands:
# Using Node.js (Recommended)
npx serve -l 2026
# Using Python
python -m http.server 2026
# Using PHP
php -S localhost:2026
%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#4CAF50'}}}%%
graph TD
A[📚 Collect PDFs] --> B[⚡ Convert to CBT]
B --> C[⏰ Practice Regularly]
C --> D[📊 Analyze Performance]
D --> E[🔄 Improve & Repeat]
E --> C
style A fill:#4CAF50,stroke:#2E7D32,color:#fff
style B fill:#2196F3,stroke:#1565C0,color:#fff
style C fill:#FF9800,stroke:#E65100,color:#fff
style D fill:#9C27B0,stroke:#6A1B9A,color:#fff
style E fill:#F44336,stroke:#C62828,color:#fff
Key Focus Areas:
|
%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#FF5722'}}}%%
graph TD
A[📖 Subject Balance] --> B[🎯 Topic Focus]
B --> C[⏱️ Time Management]
C --> D[📈 Track Progress]
D --> E[🔄 Continuous Practice]
E --> B
style A fill:#FF5722,stroke:#D84315,color:#fff
style B fill:#FFC107,stroke:#F57C00,color:#000
style C fill:#8BC34A,stroke:#558B2F,color:#fff
style D fill:#3F51B5,stroke:#283593,color:#fff
style E fill:#9C27B0,stroke:#6A1B9A,color:#fff
Key Focus Areas:
|































