Zeba Academy Skill Assessment
A powerful Flutter package for building skill assessment systems with tests, scoring, weak area detection, and personalized learning recommendations.
⨠Features
š Skill Tests
- Create customizable assessments
- Multiple choice questions
- Skill-based question grouping
- Easy integration with Flutter apps
š Score Reports
- Automatic score calculation
- Percentage-based performance reports
- Detailed assessment results
šÆ Weak Area Detection
- Detect topics where users struggle
- Analyze incorrect answers
- Identify improvement areas
š” Recommendations
- Generate personalized learning suggestions
- Provide skill-focused improvement paths
- Help users improve faster
Installation
Add this package to your pubspec.yaml:
dependencies:
zeba_academy_skill_assessment: ^1.0.0
Run:
flutter pub get
Usage
Import the package:
import 'package:zeba_academy_skill_assessment/zeba_academy_skill_assessment.dart';
Create Questions
final questions = [
QuestionModel(
id: "flutter_1",
question:
"Which widget does not have mutable state?",
options: [
"StatefulWidget",
"StatelessWidget"
],
correctAnswer: 1,
skill: "Flutter Basics",
),
];
Create Assessment
final assessment = AssessmentModel(
title: "Flutter Skill Test",
questions: questions,
);
Open Assessment Screen
Navigator.push(
context,
MaterialPageRoute(
builder: (_) => AssessmentScreen(
assessment: assessment,
),
),
);
Assessment Result
The package automatically provides:
- Score
- Percentage
- Weak topics
- Recommendations
Example:
result.score
result.percentage
result.weakAreas
result.recommendations
Architecture
lib/
āāā models/
ā āāā question_model.dart
ā āāā assessment_model.dart
ā āāā result_model.dart
āāā engine/
ā āāā assessment_engine.dart
āāā services/
ā āāā recommendation_service.dart
āāā widgets/
ā āāā question_card.dart
ā āāā score_report.dart
ā āāā recommendation_card.dart
āāā screens/
āāā assessment_screen.dart
āāā result_screen.dart
API Overview
QuestionModel
QuestionModel({
required String id,
required String question,
required List<String> options,
required int correctAnswer,
required String skill,
});
AssessmentEngine
Evaluates user performance.
AssessmentEngine().evaluate(
questions: questions,
answers: answers,
);
Returns:
ResultModel
ResultModel
Contains:
score
total
percentage
weakAreas
recommendations
Testing
Run package tests:
flutter test
Analyze code:
flutter analyze
Roadmap
Future improvements:
- JSON question import
- Firebase integration
- Online assessment support
- Difficulty levels
- Timed examinations
- Progress tracking
- Certificates
- Analytics dashboard
About Me
⨠Iām Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.
Learn more about my work:
š Website: https://sufyanism.com/
š¼ LinkedIn: https://www.linkedin.com/in/sufyanism
Zeba Academy
Your all-in-one learning hub!
š Explore courses and resources in coding, tech, and development.
Zeba Academy is a learning platform dedicated to coding, technology, and development.
Visit:
ā” Main website:
ā” Hands-on courses and resources:
ā” YouTube tutorials:
https://www.youtube.com/@zeba.academy
ā” Instagram:
https://www.instagram.com/zeba.academy/
Contributing
Contributions are welcome!
Steps:
-
Fork this repository
-
Create a feature branch
git checkout -b feature/new-feature
- Commit changes
git commit -m "Add new feature"
- Push changes
git push origin feature/new-feature
- Open a Pull Request
License
This project is licensed under the GNU General Public License v3.0.
You are free to:
- Use
- Modify
- Share
- Distribute
under the terms of the GPL-3.0 license.
See the LICENSE file for details.
Credits
Developed with ā¤ļø using Flutter.
Ā© Zeba Academy