
Davinci is a powerful package that allows you to convert any widget into an image, which can be saved locally or shared across apps and chats. Perfect for creating snapshots of your UI! 📸
🛠️ Supported Platforms
Platform | Status |
---|---|
Android | ✅ |
iOS | ✅ |
Web | ✅ |
Feel free to test it on other platforms and report back with your findings! 🚀
📹 Preview

Prerequisites
For iOS
Add the following keys to your Info.plist file, located in <project root>/ios/Runner/Info.plist
:
NSPhotoLibraryUsageDescription
- Describe why your app needs permission for the photo library. This is called Privacy - Photo Library Usage Description in the visual editor.
For Android
Add the following permission to your AndroidManifest.xml
:
android.permission.WRITE_EXTERNAL_STORAGE
- Permission for usage of external storage.
ℹ️ Usage
Imports
import 'package:davinci/core/davinci_capture.dart';
import 'package:davinci/davinci.dart';
Code
If the widget is in the widget tree, use the click
method:

If the widget is not in the widget tree, use the offStage
method:

🎨 Customization

ℹ️ All the parameters in the click
method are present in the offStage
method except the brandTag
prop.
🛎️ Note:
- If you wish to save the generated images locally, do remember to add the necessary permissions in
Info.plist
andAndroidManifest.xml
.