All Projects → josiahsrc → Flutter_dough

josiahsrc / Flutter_dough

Licence: mit
This package provides some widgets you can use to create a smooshy UI.

Programming Languages

dart
5743 projects

Projects that are alternatives of or similar to Flutter dough

dough
This package provides some widgets you can use to create a smooshy UI.
Stars: ✭ 518 (+103.94%)
Mutual labels:  ux, drag
DragDemo
需求解决系列一之移动卡片实现答题功能,移动卡片插入到题干之中完成答题
Stars: ✭ 63 (-75.2%)
Mutual labels:  drag
simple slider
A Flutter widget for images sliding
Stars: ✭ 53 (-79.13%)
Mutual labels:  ux
react-todo
A super accessible and easy to use todo list.
Stars: ✭ 13 (-94.88%)
Mutual labels:  ux
malice-kibana-plugin
Malice Kibana Plugin
Stars: ✭ 21 (-91.73%)
Mutual labels:  ux
vue-simple-upload-component
A simple upload component for Vue.js 2.x
Stars: ✭ 14 (-94.49%)
Mutual labels:  drag
navbuilder
Generiert frei definierbare Navigationsbäume mittels Drag & Drop
Stars: ✭ 21 (-91.73%)
Mutual labels:  drag
Bottom Sheet
⬆️ A SwiftUI view component sliding in from bottom
Stars: ✭ 252 (-0.79%)
Mutual labels:  drag
Smart-Inspector
Fluent re-take on Unity Inspector UX. Packed with QoL improvements.
Stars: ✭ 680 (+167.72%)
Mutual labels:  ux
ux-theming
Make UX theming in Mendix a lot easier
Stars: ✭ 22 (-91.34%)
Mutual labels:  ux
subjx
Drag/Resize/Rotate Javascript library
Stars: ✭ 155 (-38.98%)
Mutual labels:  drag
blog AwesomeNavigationDrawer
https://medium.com/@anshsachdevaprofessional/navigation-drawer-with-a-twist-3dacb21f6b72
Stars: ✭ 29 (-88.58%)
Mutual labels:  ux
yii2-forms
Forms CRUD - formbuilder, generator code
Stars: ✭ 32 (-87.4%)
Mutual labels:  drag
nifi-fds
Mirror of Apache NiFi Flow Design System
Stars: ✭ 25 (-90.16%)
Mutual labels:  ux
orgenic-ui
ORGENIC UI is an MIT-licensed open source project for creating strong user interfaces with high quality web components.
Stars: ✭ 53 (-79.13%)
Mutual labels:  ux
dragView
网页可视化拖拽布局
Stars: ✭ 38 (-85.04%)
Mutual labels:  drag
sketch-git-hooks
Easy trick how to enjoy Git versioning for Sketch files thanks to Git Hooks
Stars: ✭ 12 (-95.28%)
Mutual labels:  ux
Edite
📸 Your new Photoshop
Stars: ✭ 17 (-93.31%)
Mutual labels:  ux
Dragfloatingactionbutton
一个可以随处拖曳FloatingActionButton,边缘自动吸附,可设置按钮悬浮透明度,拖曳避免阻挡界面视图无法查看。
Stars: ✭ 258 (+1.57%)
Mutual labels:  drag
Hover On Touch
A pure Javascript Plugin for an alternative hover function that works on mobile and desktop devices. It triggers a hover css class on »Taphold« and goes to a possible link on »Tap«. It works with all html elements.
Stars: ✭ 256 (+0.79%)
Mutual labels:  ux

Flutter Dough

style: very good analysis Awesome: Flutter

This package provides some widgets you can use to create a smooshy UI.

How to use

This package provides squishy widgets you can use right out of the box. Optionally, you can create custom Dough widgets for a custom squish effect. For a more complete overview on how to use the Dough library, check out the example project provided on GitHub.

Pressable Dough

Wrap any widget in PressableDough to make it squish based on a user's input gestures.

PressableDough(
    child: FloatingActionButton( ... ),
);

You can find a full example of how to use this widget here.

PressableDough Demo

Draggable Dough

Similar to Flutter's built-in Draggable widget, DraggableDough allows you to drag and drop widgets around... Only this time it's squishy!

DraggableDough<String>(
    data: 'My data',
    child: Container( ... ),
    feedback: Container( ... ),
);

You can find a full example of how to use this widget here.

DraggableDough Demo

Gyro Dough

Wrap any widget in GyroDough to make it squish based on how a user moves their phone around in physical space. This widget only works on devices that have accelerometer/gyroscope features.

GyroDough(
    child: Container( ... ),
);

You can find a full example of how to use this widget here.

GyroDough Demo

Make your own Dough

If the above widgets aren't exactly what you're looking for, you can easily create your own squishy widget using the provided Dough widget! See the example project for more details on how to do this.

CustomDough Demo


Customize how the Dough feels

If you don't like the default dough settings, you can easily change how the dough feels. Just wrap any widget that uses Dough in a DoughRecipe and you're good to go.

DoughRecipe(
    data: DoughRecipeData(
        adhesion: 4,
        viscosity: 250, // a more jello like substance
        usePerspectiveWarp: true, // use for added jiggly-ness
        perspectiveWarpDepth: 0.02,
        exitDuration: Duration(milliseconds: 600),
        ...
    ),
    child: PressableDough( ... ),
);

You can find a full example of how to use this widget here.

DoughRecipe Demo


Future improvements

Dough expansion – Ideally, pressing on a dough widget would push pixels away from your finger, as if you were pressing on dough (possibly using a mesh-grid?). If you have any ideas for how to achieve this, please consider contributing!

More dough widgets – Support for more out-of-the-box dough widgets will be added in the future. Some dough widget ideas include...

  • [ ] ReorderableListDough – Same as the reorderable list widget, but it's smooshy.
  • [ ] SliverListDough – Same as the sliver list widget, but it's smooshy.

Contributing

Contributions to this package are always welcome! Please read the contributing guidlines.

  • If you have an idea/suggestion/bug-report, feel free to create a ticket.
  • If you created a custom Dough widget or some other awesome feature that you want to share with the community, feel free to fork the repository and submit a pull request!

keywords: dough, rubber, elastic, rubber-band, rubberband, stretchy, squishy, smooshy, linear-algebra, matrix, transformation, flexible, draggable, drag, pressable, custom, ui, ux, interactive, animation, engage

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].