๐ zeba_academy_exam_simulator
A professional Flutter exam simulation engine that replicates real CBT (Computer Based Test) environments used in competitive exams.
Built for edtech apps, mock test platforms, and learning systems โ with clean architecture, responsive UI, and reusable components.
โจ Features
โ Real Exam Navigation Palette โ Mark for Review option โ Auto submit when timer ends โ Negative marking system โ Question status tracking โ Exam progress indicator โ Responsive mobile + tablet UI โ Material 3 design โ Fully reusable package architecture
๐ธ Screenshots
๐ฑ Exam Screen

๐ฏ Question Navigation Palette

๐ Result Screen

๐ Installation
Add dependency:
dependencies:
zeba_academy_exam_simulator: ^1.0.0
Or use local path during development:
zeba_academy_exam_simulator:
path: ../
Then run:
flutter pub get
๐งฑ Basic Usage
1๏ธโฃ Import Package
import 'package:zeba_academy_exam_simulator/zeba_academy_exam_simulator.dart';
2๏ธโฃ Create Questions
final questions = [
ExamQuestion(
id: "1",
question: "Capital of India?",
options: ["Delhi", "Mumbai", "Chennai", "Kolkata"],
correctIndex: 0,
),
];
3๏ธโฃ Configure Exam
final controller = ExamController(
config: ExamConfig(
examDuration: Duration(minutes: 30),
positiveMarks: 4,
negativeMarks: -1,
),
questions: questions,
);
4๏ธโฃ Launch Exam Screen
MaterialApp(
theme: ExamTheme.light(),
home: ExamScreen(controller: controller),
);
๐ง Question Status Logic
| Status | Meaning |
|---|---|
| โฌ Not Visited | Question not opened |
| ๐ฉ Answered | Option selected |
| ๐ง Marked Review | Needs review |
| ๐ช Answered + Review | Answered but flagged |
๐จ UI Architecture
lib/
โโโ src/
โ โโโ core/
โ โ โโโ models/
โ โ โโโ controller/
โ โ โโโ engine/
โ โโโ ui/
โ โ โโโ screens/
โ โ โโโ widgets/
โ โ โโโ theme/
โ โโโ utils/
Designed for scalability and large edtech applications.
โ๏ธ Included Components
| Component | Purpose |
|---|---|
| ExamController | Exam state engine |
| ExamScreen | Main exam UI |
| QuestionCard | Question renderer |
| QuestionPalette | Navigation grid |
| ExamHeader | Timer + progress |
| ExamTheme | Material 3 theme |
โฑ Timer Behaviour
- Countdown starts automatically
- Updates UI every second
- Auto-submits exam when time ends
๐งฎ Scoring System
Correct Answer โ +positiveMarks
Wrong Answer โ negativeMarks
Unanswered โ 0
Fully configurable.
๐ฑ Responsive Layout
| Device | Layout |
|---|---|
| Mobile | Palette at bottom |
| Tablet | Side palette |
| Desktop | CBT-style interface |
๐งช Running Example
cd example
flutter run
๐ฆ Publishing Checklist
flutter analyze
flutter test
flutter pub publish --dry-run
๐บ Roadmap
Section-wise examsResume exam supportResult analytics chartsDark mode themeOffline persistenceAI difficulty adaptation
๐ค Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
๐ License
GNU General Public License v3.0 (GPL-3.0)
โค๏ธ Zeba Academy
Built with Flutter for modern education platforms.
Website: https://zeba.academy/flutter/