zeba_academy_course_player

A production-ready Flutter package for building complete course experiences with video lessons, PDF viewing, notes, bookmarks, and course progress tracking.

Designed for modern learning platforms and educational apps.


✨ Features

✅ Video lesson player ✅ PDF course material viewer ✅ Personal notes system ✅ Lesson bookmarks ✅ Course progress tracking ✅ Clean and reusable architecture ✅ Flutter package ready ✅ Mobile and desktop compatible


Preview

Build immersive learning experiences directly inside Flutter apps.

Course Player
│
├── Video Lessons
├── Course PDFs
├── Notes
├── Bookmarks
└── Progress Tracking

Installation

Add dependency:

dependencies:
  zeba_academy_course_player: ^1.0.0

Install:

flutter pub get

Import:

import 'package:zeba_academy_course_player/zeba_academy_course_player.dart';

Quick Start

import 'package:flutter/material.dart';

import 'package:zeba_academy_course_player/zeba_academy_course_player.dart';

void main() {
  runApp(
    const MyApp(),
  );
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: CoursePlayer(
          controller: CourseController(),

          video:
              'https://example.com/video.mp4',

          pdf:
              'https://example.com/course.pdf',
        ),
      ),
    );
  }
}

CoursePlayer

Main widget that powers the complete course experience.

CoursePlayer(
  controller: CourseController(),

  video:
      videoUrl,

  pdf:
      pdfUrl,
)

Notes

Save notes while learning.

controller.addNote(
  'Important concept',
);

Bookmarks

Bookmark lessons for quick access.

controller.toggleBookmark(
  lessonIndex,
);

Progress Tracking

Track completion progress.

controller.nextLesson();

Package Structure

lib/

├── controllers/
│   └── course_controller.dart

├── models/
│   ├── lesson.dart
│   ├── bookmark.dart
│   └── note.dart

├── widgets/
│   ├── course_player.dart
│   ├── video_section.dart
│   ├── pdf_section.dart
│   ├── notes_section.dart
│   └── progress_section.dart

└── zeba_academy_course_player.dart

Roadmap

Version 1.x

  • Offline course downloads
  • Continue watching
  • Course completion certificates
  • Analytics support

Version 2.x

  • AI recommendations
  • Live classes
  • Quiz integration
  • Cloud synchronization

Contributing

Contributions are welcome.

fork
clone
create feature branch
commit
push
open PR

License

Licensed under GNU General Public License v3.0 (GPL-3.0).

Copyright (C) 2026

This program is free software:
you can redistribute it and/or modify
it under the terms of the GNU General Public License.

See LICENSE for full details.

About Me

✨ I’m Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.

You can learn more about me and my work:

Website https://sufyanism.com

LinkedIn https://www.linkedin.com/in/sufyanism


Your all-in-one learning hub!

🚀 Explore courses and resources in coding, tech, and development at zeba.academy and code.zeba.academy.

Empower yourself with practical skills through curated tutorials, real-world projects, and hands-on experience.

💻 Level up your tech journey.

Main Website https://zeba.academy

Courses https://code.zeba.academy

YouTube https://www.youtube.com/@zeba.academy

Instagram https://www.instagram.com/zeba.academy/


Thank you for visiting ❤️