zeba_academy_ui_replay
๐ Record & Replay UI Interactions in Flutter
zeba_academy_ui_replay is a lightweight Flutter package designed for recording and replaying user interactions such as taps and gestures. It is ideal for testing, debugging, and automation without relying on external services.
โจ Features
- ๐ฅ Record taps & gestures
- โถ๏ธ Replay UI interactions
- ๐พ Export logs (JSON)
- ๐ก Works fully offline
- โก Lightweight & fast
๐ฆ Installation
Add this to your pubspec.yaml:
dependencies:
zeba_academy_ui_replay: ^0.0.1
Then run:
flutter pub get
๐ Getting Started
1๏ธโฃ Import Package
import 'package:zeba_academy_ui_replay/zeba_academy_ui_replay.dart';
2๏ธโฃ Initialize Recorder & Replayer
final recorder = UIRecorder();
final replayer = UIReplayer();
3๏ธโฃ Wrap Your UI
RecordableWidget(
recorder: recorder,
child: YourWidget(),
)
4๏ธโฃ Start & Stop Recording
recorder.start();
recorder.stop();
5๏ธโฃ Replay Events
await replayer.replay(
recorder.events,
(offset) {
print("Tapped at: $offset");
},
);
6๏ธโฃ Export Logs
final path = await UIExporter.export(recorder.events);
print("Saved at: $path");
๐ง How It Works
User Interaction
โ
RecordableWidget
โ
UIRecorder โ Stores Events
โ
Exporter โ JSON File
โ
UIReplayer โ Simulates Events
๐งช Testing
Run tests using:
flutter test
Includes:
- Recorder tests
- Replayer tests
- Widget interaction tests
๐ Project Structure
lib/
โโโ src/
โ โโโ models/
โ โโโ recorder/
โ โโโ replay/
โ โโโ widgets/
โ โโโ utils/
โโโ zeba_academy_ui_replay.dart
๐ฎ Roadmap
Drag & swipe gesture supportVisual replay overlaySpeed control for replayWidget key-based replayIntegration with Flutter test framework
๐ License
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
You are free to:
- Use
- Modify
- Distribute
Under the condition that:
- Source code must be disclosed
- Same license must be applied
๐จโ๐ป 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: https://zeba.academy โก Explore hands-on courses: https://code.zeba.academy โก YouTube: https://www.youtube.com/@zeba.academy โก Instagram: https://www.instagram.com/zeba.academy/
โญ Support
If you like this project:
- โญ Star the repo
- ๐ด Fork it
- ๐ Contribute
๐ Contributions
Contributions are welcome! Feel free to open issues or submit pull requests.
๐ฌ Feedback
Have ideas or improvements? Open an issue or reach out โ your feedback helps make this better.
Thank you for visiting! โค๏ธ