zeba_academy_study_timer
A powerful Flutter study productivity toolkit that provides Pomodoro timers, study streak tracking, XP-based rewards, goal-based sessions, and session analytics.
This package helps developers easily add gamified study tracking systems into Flutter apps for students, e-learning platforms, productivity apps, and study planners.
โจ Features
- โฑ Pomodoro Timer โ Simple configurable focus timer
- ๐ฅ Study Streak Tracking โ Track consecutive study days
- ๐ฏ Goal-Based Sessions โ Attach study goals to each session
- โญ XP & Reward System โ Gamified learning progress
- ๐ Session Analytics โ Analyze total study time and averages
- ๐งฉ Easy Integration โ Simple API for Flutter apps
๐ฆ Installation
Add the package to your pubspec.yaml.
dependencies:
zeba_academy_study_timer: ^1.0.0
Then run:
flutter pub get
๐ Import
import 'package:zeba_academy_study_timer/zeba_academy_study_timer.dart';
โฑ Pomodoro Timer
The Pomodoro timer helps users focus on study sessions.
Example
final timer = PomodoroTimer(
workMinutes: 25,
breakMinutes: 5,
);
timer.onTick = (seconds) {
print("Remaining: $seconds");
};
timer.onFinish = () {
print("Session completed!");
};
timer.start();
๐ฅ Study Streak Tracking
Track how many days the user studies consecutively.
final streak = StudyStreak();
streak.recordStudy(DateTime.now());
print(streak.currentStreak);
โญ XP & Reward System
Gamify study sessions using XP points.
final rewards = XPRewardSystem();
rewards.addSessionXP(30);
print("Total XP: ${rewards.totalXP}");
print("Level: ${rewards.level}");
๐ฏ Goal Based Study Sessions
Each session can store a study goal.
final session = StudySession(
startTime: DateTime.now(),
endTime: DateTime.now().add(Duration(minutes: 25)),
durationMinutes: 25,
goal: "Learn Flutter State Management",
);
๐ Session Analytics
Analyze study performance.
final analytics = SessionAnalytics(sessions);
print("Total Sessions: ${analytics.totalSessions}");
print("Total Study Time: ${analytics.totalStudyTime}");
print("Average Minutes: ${analytics.averageSessionMinutes}");
๐ง Study Timer Manager
Manage sessions, streaks, and rewards together.
final manager = StudyTimerManager();
manager.completeSession(
start: DateTime.now(),
end: DateTime.now().add(Duration(minutes: 25)),
goal: "Math Revision",
);
print(manager.sessions.length);
print(manager.streak.currentStreak);
print(manager.rewards.totalXP);
๐ฑ Example App
Run the example application included with the package.
cd example
flutter run
๐ธ Screenshots
Place screenshots inside a screenshots folder in the root project.
screenshots/
โโโ timer.png
โโโ streak.png
โโโ analytics.png
โโโ rewards.png
Then reference them in the README:




๐งช Running Tests
Run tests using:
flutter test
๐ Project Structure
lib/
โโโ zeba_academy_study_timer.dart
โโโ src
โโโ models
โ โโโ study_session.dart
โโโ timer
โ โโโ pomodoro_timer.dart
โโโ streak
โ โโโ study_streak.dart
โโโ rewards
โ โโโ xp_reward_system.dart
โโโ analytics
โ โโโ session_analytics.dart
โโโ manager
โโโ study_timer_manager.dart
๐ฏ Use Cases
This package is perfect for:
- ๐ Study planner apps
- ๐งโ๐ Student productivity apps
- ๐ E-learning platforms
- โณ Focus timer apps
- ๐ฎ Gamified learning systems
๐ค Contributing
Contributions are welcome!
- Fork the repository
- Create a new feature branch
- Commit your changes
- Submit a pull request
๐ License
This project is licensed under the GPL License.
๐จโ๐ป Author
Developed by Zeba Academy to help students build better study habits through gamification and productivity tools.