🎓 zeba_academy_behavior_tracker

A comprehensive Flutter behavior analytics toolkit for EdTech apps. Track study sessions, calculate engagement, analyze focus, and generate heatmaps to visualize user learning patterns.


✨ Features

  • ✅ Track study sessions with StudySession objects
  • ✅ Calculate total study time and daily/weekly study metrics (ActivityAnalytics)
  • ✅ Compute engagement scores based on interactions (EngagementCalculator)
  • ✅ Analyze focus and average study durations (FocusAnalyzer)
  • ✅ Generate hourly heatmaps for visual insights (HeatmapGenerator)
  • ✅ Lightweight, zero external dependencies

📦 Installation

Add the dependency in your pubspec.yaml:

dependencies:
  zeba_academy_behavior_tracker: ^1.0.0

Then run:

flutter pub get

🛠 Usage

Import the package:

import 'package:zeba_academy_behavior_tracker/zeba_academy_behavior_tracker.dart';

Track study sessions:

final sessions = [
  StudySession(
    startTime: DateTime(2026, 3, 5, 10, 0),
    endTime: DateTime(2026, 3, 5, 11, 0),
    interactions: 25,
  ),
  StudySession(
    startTime: DateTime(2026, 3, 5, 14, 0),
    endTime: DateTime(2026, 3, 5, 14, 45),
    interactions: 15,
  ),
];

Analyze total study time:

final analytics = ActivityAnalytics(sessions);
print("Total study time: \${analytics.totalStudyTime.inMinutes} minutes");
print("Daily study minutes: \${analytics.dailyStudyMinutes()}");
print("Weekly total minutes: \${analytics.weeklyTotalMinutes()}");

Calculate engagement score:

final engagement = EngagementCalculator(sessions);
print("Engagement score: \${engagement.calculateScore()}");

Analyze focus durations:

final focus = FocusAnalyzer(sessions);
print("Average focus duration: \${focus.averageFocusDuration()} minutes");
print("All focus durations: \${focus.focusDurations()}");

Generate hourly heatmap:

final heatmap = HeatmapGenerator(sessions);
print("Hourly heatmap: \${heatmap.generateHourlyHeatmap()}");

🖼 Screenshots

Dashboard

Example: Visualize study analytics, engagement trends, and heatmaps.


âš¡ Classes Overview

  • StudySession – Represents a single study session with start/end time and interactions.
  • ActivityAnalytics – Total study time, daily & weekly metrics.
  • EngagementCalculator – Computes engagement score based on interactions per minute.
  • FocusAnalyzer – Calculates average focus durations and all session durations.
  • HeatmapGenerator – Generates hourly heatmaps of study activity.

📖 Changelog

1.0.0 – 2026-03-05

  • Initial release
  • Full behavior analytics suite for Flutter EdTech apps

âš– License

This project is licensed under the GNU General Public License v3.0 (GPL-3.0).

See the LICENSE file for details.