๐ŸŽ“ 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

Exam Screen

๐ŸŽฏ Question Navigation Palette

Question Palette

๐Ÿ† Result Screen

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 exams
  • Resume exam support
  • Result analytics charts
  • Dark mode theme
  • Offline persistence
  • AI 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/