zeba_academy_exam_engine
A complete Flutter Quiz & Exam Engine providing MCQ, True/False, and descriptive assessments with timer support, auto-scoring, analytics, and randomized exams.
Built for EdTech, eLearning, academic, and assessment applications.
โจ Features
Question Types
- MCQ (Multiple Choice Questions)
- True / False
- Descriptive questions (manual evaluation ready)
Exam Engine
- Timer support
- Auto scoring system
- Negative marking option
- Randomized question order
- Question navigation control
Analytics
- Accuracy calculation
- Grade evaluation
- Detailed result summary
Developer Friendly
- Clean architecture
- Controller-based state management
- Fully testable logic
- Modular design
๐ฆ Installation
Add dependency:
dependencies:
zeba_academy_exam_engine:
git:
url: https://code.zeba.academy
Then run:
flutter pub get
๐ Quick Start
1๏ธโฃ Import Package
import 'package:zeba_academy_exam_engine/zeba_academy_exam_engine.dart';
2๏ธโฃ Create Questions
final questions = [
Question(
id: "1",
question: "Flutter is developed by?",
type: QuestionType.mcq,
options: ["Google", "Apple", "Microsoft"],
correctAnswer: "Google",
marks: 1,
),
];
3๏ธโฃ Configure Exam
final config = ExamConfig(
duration: Duration(minutes: 10),
negativeMarking: true,
negativeMarks: 0.25,
);
4๏ธโฃ Create Controller
final controller = ExamController(
questions: questions,
config: config,
);
5๏ธโฃ Show Exam UI
ExamView(controller: controller);
6๏ธโฃ Submit Exam
final result = controller.submit();
๐ Result Analytics
final accuracy = ResultAnalyzer.accuracy(result);
final grade = ResultAnalyzer.grade(result);
๐งฑ Architecture
src/
โโโ models/
โโโ engine/
โโโ analytics/
โโโ ui/
Core Components
| Component | Responsibility |
|---|---|
| ExamController | Exam state & navigation |
| ScoringEngine | Auto scoring logic |
| ExamTimer | Countdown handling |
| ResultAnalyzer | Performance analytics |
| ExamView | Ready-to-use UI |
๐งช Testing
Run tests:
flutter test
The engine is fully unit-testable.
๐ฏ Use Cases
- eLearning apps
- Online exams
- Mock test platforms
- Certification systems
- Religious & academic quizzes
- Training platforms
๐ License
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
You are free to:
- Use
- Modify
- Distribute
Under the condition that derivative works must also remain open source under GPL v3.
See the LICENSE file for full license text.
๐จโ๐ป Author
Zeba Academy
Website: https://code.zeba.academy
๐ค Contributing
Contributions, issues, and feature requests are welcome!
- Fork the repository
- Create a feature branch
- Commit changes
- Open a Pull Request
โญ Support
If this package helps your project, please consider giving it a โญ on GitHub.
๐ Roadmap
Section-based examsAdaptive difficultyOffline persistenceCloud sync supportAdvanced analytics dashboardExam anti-cheat protections