{"id":13465529,"url":"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh","last_synced_at":"2025-03-25T16:32:13.393Z","repository":{"id":33860235,"uuid":"161937808","full_name":"aagarwal1012/Liquid-Pull-To-Refresh","owner":"aagarwal1012","description":"🔁 A custom refresh indicator for flutter.","archived":false,"fork":false,"pushed_at":"2023-07-26T12:15:44.000Z","size":16177,"stargazers_count":1252,"open_issues_count":15,"forks_count":91,"subscribers_count":24,"default_branch":"master","last_synced_at":"2024-10-22T03:30:44.116Z","etag":null,"topics":["android","flutter","hacktoberfest","ios","pull-to-refresh","refresh-indicator","swipe-refresh","swipe-to-refresh","swiperefreshlayout"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/liquid_pull_to_refresh","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aagarwal1012.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"patreon":"aagarwal1012","custom":"https://www.paypal.me/aagarwal1012"}},"created_at":"2018-12-15T19:36:46.000Z","updated_at":"2024-10-19T18:40:36.000Z","dependencies_parsed_at":"2024-01-05T21:04:03.793Z","dependency_job_id":null,"html_url":"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aagarwal1012%2FLiquid-Pull-To-Refresh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aagarwal1012%2FLiquid-Pull-To-Refresh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aagarwal1012%2FLiquid-Pull-To-Refresh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aagarwal1012%2FLiquid-Pull-To-Refresh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aagarwal1012","download_url":"https://codeload.github.com/aagarwal1012/Liquid-Pull-To-Refresh/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222074962,"owners_count":16926640,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","flutter","hacktoberfest","ios","pull-to-refresh","refresh-indicator","swipe-refresh","swipe-to-refresh","swiperefreshlayout"],"created_at":"2024-07-31T15:00:31.594Z","updated_at":"2024-10-29T17:31:06.648Z","avatar_url":"https://github.com/aagarwal1012.png","language":"Dart","funding_links":["https://patreon.com/aagarwal1012","https://www.paypal.me/aagarwal1012","https://www.paypal.me/aagarwal1012/"],"categories":["Components","Dart","Packages","UI [🔝](#readme)","组件"],"sub_categories":["UI"],"readme":"\u003cdiv align=\"center\"\u003e\u003cimg src=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/display/cover.png?raw=true\"/\u003e\u003c/div\u003e\r\n\r\n# \u003cdiv align=\"center\"\u003eLiquid Pull To Refresh\u003c/div\u003e\r\n\u003cdiv align=\"center\"\u003e\u003cp\u003eA beautiful and custom refresh indicator for flutter highly inspired from \u003ca href=\"https://dribbble.com/shots/1797373-Pull-Down-To-Refresh\"\u003eRamotion Pull Down to Refresh\u003c/a\u003e. Try out our \u003ca href=\"https://liquid-pull-to-refresh.web.app/\"\u003elive example app\u003c/a\u003e.\u003c/p\u003e\u003c/div\u003e\u003cbr\u003e\r\n\r\n\u003cdiv align=\"center\"\u003e\r\n\t\u003ca href=\"https://flutter.io\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/Platform-Flutter-yellow.svg\"\r\n      alt=\"Platform\" /\u003e\r\n  \u003c/a\u003e\r\n  \t\u003ca href=\"https://pub.dartlang.org/packages/liquid_pull_to_refresh\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/pub/v/liquid_pull_to_refresh.svg\"\r\n      alt=\"Pub Package\" /\u003e\r\n  \u003c/a\u003e\r\n  \t\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/actions/workflows/main.yml\"\u003e\r\n    \u003cimg src=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/actions/workflows/main.yml/badge.svg\"\r\n      alt=\"CI\" /\u003e\r\n  \u003c/a\u003e\r\n  \u003ca href=\"https://codecov.io/gh/aagarwal1012/Liquid-Pull-To-Refresh\"\u003e\r\n    \u003cimg src=\"https://codecov.io/gh/aagarwal1012/Liquid-Pull-To-Refresh/branch/master/graph/badge.svg\"\r\n      alt=\"Codecov Coverage\" /\u003e\r\n  \u003c/a\u003e\r\n  \t\u003ca href=\"https://opensource.org/licenses/MIT\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/License-MIT-red.svg\"\r\n      alt=\"License: MIT\" /\u003e\r\n  \u003c/a\u003e\r\n  \t\u003ca href=\"https://www.paypal.me/aagarwal1012\"\u003e\r\n    \u003cimg src=\"https://img.shields.io/badge/Donate-PayPal-green.svg\"\r\n      alt=\"Donate\" /\u003e\r\n  \u003c/a\u003e\r\n\u003c/div\u003e\u003cbr\u003e\r\n\r\n# Table of contents\r\n\r\n  * [Installing](#installing)\r\n  * [Usage](#usage)\r\n  * [Documentation](#documentation)\r\n  * [Bugs or Requests](#bugs-or-requests)\r\n  * [Donate](#donate)\r\n  * [Contributors](#contributors-)\r\n  * [License](#license)\r\n\r\n# Installing\r\n\r\n### 1. Depend on it\r\nAdd this to your package's `pubspec.yaml` file:\r\n\r\n```yaml\r\ndependencies:\r\n  liquid_pull_to_refresh: ^3.0.1\r\n```\r\n\r\n### 2. Install it\r\n\r\nYou can install packages from the command line:\r\n\r\nwith `pub`:\r\n\r\n```css\r\n$ pub get\r\n```\r\n\r\nwith `Flutter`:\r\n\r\n```css\r\n$ flutter packages get\r\n```\r\n\r\n### 3. Import it\r\n\r\nNow in your `Dart` code, you can use: \r\n\r\n```dart\r\nimport 'package:liquid_pull_to_refresh/liquid_pull_to_refresh.dart';\r\n```\r\n\r\n\r\n# Usage\r\n\r\nFor adding this custom refresh indicator in your flutter app, you have to simply wrap *ListView*  or *GridView* inside `LiquidPullToRefresh`. Also you have provide the value of `onRefresh` parameter which is a refresh callback. \r\n\r\n**Note -** `LiquidPullToRefresh` can only be used with a vertical scroll view.\r\n\r\nFor example:\r\n\r\n```dart\r\nLiquidPullToRefresh(\r\n        key: _refreshIndicatorKey,\t// key if you want to add\r\n        onRefresh: _handleRefresh,\t// refresh callback\r\n        child: ListView(),\t\t// scroll view\r\n      );\r\n```\r\n\r\nIf you do not want the opacity transition of child then set `showChildOpacityTransition: false`.  Preview regarding the both form of this widget is follows :-\r\n\u003cdiv align=\"center\"\u003e\r\n\u003ctable\u003e\r\n\u003cthead\u003e\r\n\u003ctr\u003e\r\n\u003cth style=\"text-align:center\"\u003e\u003ccode\u003eshowChildOpacityTransition: true\u003c/code\u003e\u003c/th\u003e\r\n\u003cth style=\"text-align:center\"\u003e\u003ccode\u003eshowChildOpacityTransition: false\u003c/code\u003e\u003c/th\u003e\r\n\u003c/tr\u003e\r\n\u003c/thead\u003e\r\n\u003ctbody\u003e\r\n\u003ctr\u003e\r\n\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/display/liquid.gif?raw=true\" height = \"500px\"/\u003e\u003c/td\u003e\r\n\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/display/liquid_false.gif?raw=true\" height = \"500px\"/\u003e\u003c/td\u003e\r\n\u003c/tr\u003e\r\n\u003c/tbody\u003e\r\n\u003c/table\u003e\r\n\u003c/div\u003e\r\n\r\n# Documentation\r\n\r\n### LiquidPullToRefresh Class\r\n\r\n| Dart attribute                        | Datatype        | Description                                                                                            |     Default Value     |\r\n| :------------------------------------ | :-------------- | :----------------------------------------------------------------------------------------------------- | :-------------------: |\r\n| child                                 | ScrollView      | The widget below this widget in the tree.                                                              |       @required       |\r\n| onRefresh                             | RefreshCallback | A function that's called when the refreshing of page takes place.                                      |       @required       |\r\n| height                                | double          | The distance from the child's top or bottom edge to where the box will settle after the spring effect. |         100.0         |\r\n| springAnimationDurationInMilliseconds | int             | Duration in milliseconds of springy effect that occurs when we leave dragging after full drag.         |         1000          |\r\n| borderWidth                           | double          | Border width of progressing circle in Progressing Indicator.                                           |          2.0          |\r\n| showChildOpacityTransition            | bool            | Whether to show child opacity transition or not.                                                       |         true          |\r\n| color                                 | Color           | The progress indicator's foreground color.                                                             | ColorScheme.secondary |\r\n| backgroundColor                       | Color           | The progress indicator's background color.                                                             | ThemeData.canvasColor |\r\n| animSpeedFactor                       | double          | Controls the speed of the animation after refresh. Used to fasten the ending animation.                |          1.0          |\r\n\r\nFor help on editing package code, view the [flutter documentation](https://flutter.io/developing-packages/).\r\n\r\n# Bugs or Requests\r\n\r\nIf you encounter any problems feel free to open an [issue](https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/issues/new?template=bug_report.md). If you feel the library is missing a feature, please raise a [ticket](https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/issues/new?template=feature_request.md) on GitHub and I'll look into it. Pull request are also welcome. \r\n\r\nSee [Contributing.md](https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/CONTRIBUTING.md).\r\n\r\n# Donate\r\n\u003e If you found this project helpful or you learned something from the source code and want to thank me, consider buying me a cup of :coffee:\r\n\u003e\r\n\u003e - [PayPal](https://www.paypal.me/aagarwal1012/)\r\n\r\n# Contributors\r\n\r\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\r\n\r\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\r\n\u003c!-- prettier-ignore-start --\u003e\r\n\u003c!-- markdownlint-disable --\u003e\r\n\u003ctable\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/opannapo\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/18698574?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eopannapo\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/commits?author=opannapo\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://taormina.io\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/1090627?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAnthony Taormina\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/commits?author=Taormina\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://kekland.github.io\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/14993994?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eErzhan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/commits?author=kekland\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://bigdadz-developer.web.app/\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/23566790?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePuttipong Wongrak\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/issues?q=author%3ABIGDADz\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/AadumKhor\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/37381075?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAayush Malhotra\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/issues?q=author%3AAadumKhor\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/benja8151\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/51935943?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ebenja8151\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#platform-benja8151\" title=\"Packaging/porting to new platform\"\u003e📦\u003c/a\u003e \u003ca href=\"#maintenance-benja8151\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e\u003c/td\u003e\r\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/RemcoSchrijver\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/45097990?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRemco Schrijver\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#platform-RemcoSchrijver\" title=\"Packaging/porting to new platform\"\u003e📦\u003c/a\u003e \u003ca href=\"#maintenance-RemcoSchrijver\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n\u003c!-- markdownlint-restore --\u003e\r\n\u003c!-- prettier-ignore-end --\u003e\r\n\r\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\r\n\r\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome! See [Contributing.md](https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/CONTRIBUTING.md).\r\n\r\n# License\r\nLiquid-Pull-To-Refresh is licensed under `MIT license`. View [license](https://github.com/aagarwal1012/Liquid-Pull-To-Refresh/blob/master/LICENSE).\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faagarwal1012%2FLiquid-Pull-To-Refresh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faagarwal1012%2FLiquid-Pull-To-Refresh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faagarwal1012%2FLiquid-Pull-To-Refresh/lists"}