πŸ“¦ zeba_academy_frame_scheduler

Advanced frame scheduling and rendering pipeline control for Flutter.


πŸš€ Features

  • 🎯 Schedule widget rebuilds manually
  • ⏱️ Control frame timing
  • ⚑ Reduce UI jank
  • 🎞️ Custom animation timing engine
  • πŸ” Persistent frame callbacks
  • 🧠 Priority-based task execution

πŸ“¦ Installation

Add this to your pubspec.yaml:

dependencies:
  zeba_academy_frame_scheduler: ^0.0.1

🧠 Usage

πŸ” Schedule a Rebuild

RebuildScheduler.scheduleRebuild(() {
  setState(() {});
});

🎞️ Custom Animation

AnimationScheduler.scheduleAnimation(
  duration: Duration(seconds: 2),
  onTick: (progress) {
    print(progress);
  },
  onComplete: () {
    print("Done");
  },
);

⚠️ Detect Jank

FrameTimingController.monitorFrames((timing) {
  if (FrameTimingController.isJanky(timing)) {
    print("⚠️ Jank detected");
  }
});

πŸ—οΈ Architecture

FrameSchedulerController (Core Engine)
 β”œβ”€β”€ FrameTask (Task Model)
 β”œβ”€β”€ RebuildScheduler (UI Updates)
 β”œβ”€β”€ AnimationScheduler (Custom Animations)
 └── FrameTimingController (Performance Monitoring)

πŸ“‚ Folder Structure

lib/
 β”œβ”€β”€ frame_scheduler.dart
 └── src/
     β”œβ”€β”€ scheduler_controller.dart
     β”œβ”€β”€ frame_task.dart
     β”œβ”€β”€ rebuild_scheduler.dart
     β”œβ”€β”€ animation_scheduler.dart
     └── frame_timing_controller.dart

⚑ Why Use This?

Flutter’s default rendering pipeline is powerful but abstracted. This package gives you:

  • Fine-grained control over frames
  • Better performance tuning
  • Custom rendering strategies
  • Reduced unnecessary rebuilds

πŸ›£οΈ Roadmap

  • Frame budget limiter (16ms control)
  • Task batching system
  • Idle-time scheduling
  • DevTools integration
  • Visual frame debugger

🀝 Contributing

Contributions, issues, and feature requests are welcome!


πŸ“„ License

This project is licensed under the GNU General Public License v3.0.


πŸ‘¨β€πŸ’» 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 at sufyanism.com or connect with me on Linkedin


🌐 Your all-in-one no-bloat hub!

πŸš€ Explore cutting-edge resources in coding, tech, and development at zeba.academy and code.zeba.academy. Empower yourself with practical skills through curated directives, real-world projects, and hands-on experience. Level up your tech game today! πŸ’»βœ¨

Zeba Academy is a learning platform dedicated to coding, technology, and development. ➑ Visit our main site: zeba.academy ➑ Explore hands-on courses and resources at: code.zeba.academy ➑ Check out our YouTube for more tutorials: zeba.academy ➑ Follow us on Instagram: zeba.academy


Thank you for visiting! πŸ™Œ