{"id":13551832,"url":"https://github.com/Mindinventory/flutter_draggable_gridview","last_synced_at":"2025-04-03T02:32:09.590Z","repository":{"id":37937294,"uuid":"414083075","full_name":"Mindinventory/flutter_draggable_gridview","owner":"Mindinventory","description":"This package supports drag \u0026 drop widgets inside the GridView.builder for multiplatform. It provides all the properties which are available in Gridview. builder and easy to implement with the few lines of code.","archived":false,"fork":false,"pushed_at":"2025-01-02T11:35:22.000Z","size":14721,"stargazers_count":100,"open_issues_count":1,"forks_count":19,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-29T01:14:01.156Z","etag":null,"topics":["collection-view","draggable","draggable-collection","flutter","flutter-collection-view","flutter-draggable-gridview","graggable-gridview","gridview"],"latest_commit_sha":null,"homepage":"https://www.mindinventory.com/flutter-app-development.php","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/Mindinventory.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-06T05:38:29.000Z","updated_at":"2025-03-01T15:14:07.000Z","dependencies_parsed_at":"2024-01-19T06:43:52.190Z","dependency_job_id":"1834678d-5ccd-4504-9fbc-c0b444c21b76","html_url":"https://github.com/Mindinventory/flutter_draggable_gridview","commit_stats":{"total_commits":37,"total_committers":8,"mean_commits":4.625,"dds":0.5135135135135135,"last_synced_commit":"bcf8fa6aba7f146b8d728570d299639f6b329955"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mindinventory%2Fflutter_draggable_gridview","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mindinventory%2Fflutter_draggable_gridview/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mindinventory%2Fflutter_draggable_gridview/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mindinventory%2Fflutter_draggable_gridview/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mindinventory","download_url":"https://codeload.github.com/Mindinventory/flutter_draggable_gridview/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246925425,"owners_count":20855881,"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":["collection-view","draggable","draggable-collection","flutter","flutter-collection-view","flutter-draggable-gridview","graggable-gridview","gridview"],"created_at":"2024-08-01T12:01:54.286Z","updated_at":"2025-04-03T02:32:04.561Z","avatar_url":"https://github.com/Mindinventory.png","language":"Dart","funding_links":[],"categories":["Dart"],"sub_categories":[],"readme":"# flutter_draggable_gridview\n\n\u003ca href=\"https://pub.dev/packages/flutter_draggable_gridview\"\u003e\n\u003cimg src=\"https://img.shields.io/pub/v/flutter_draggable_gridview?label=flutter_draggable_gridview\" alt=\"flutter_draggable_gridview version\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/Mindinventory/flutter_draggable_gridview/stargazers\"\u003e\n\u003cimg src=\"https://img.shields.io/github/stars/Mindinventory/flutter_draggable_gridview?style=social\" alt=\"flutter_draggable_gridview Git Stars\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://developer.android.com\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-android-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://developer.apple.com/ios/\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-iOS-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-Linux-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-Mac-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-web-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"\" style=\"pointer-events: stroke;\" target=\"_blank\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/platform-Windows-blue\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://opensource.org/licenses/MIT\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-MIT-purple.svg\" alt=\"MIT License\"\u003e\u003c/a\u003e\n\nThis package supports drag \u0026 drop widgets inside the GridView.builder for multiplatform. It provides all the properties which are available in Gridview.builder and easy to implement with the few lines of code.\n\n\n### Draggable GridView.\n![Draggable GridView](https://github.com/Mindinventory/flutter_draggable_gridview/blob/main/assets/draggable_gridview.gif)\n\n\n## Usage\n\n### Example\n```dart\n      DraggableGridViewBuilder(\n        gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(\n          crossAxisCount: 2,\n          childAspectRatio: MediaQuery.of(context).size.width / (MediaQuery.of(context).size.height / 3),\n        ),\n        children: _listOfDraggableGridItem,\n        isOnlyLongPress: false,\n        dragCompletion: (List\u003cDraggableGridItem\u003e list, int beforeIndex, int afterIndex) {\n          print( 'onDragAccept: $beforeIndex -\u003e $afterIndex');\n        },\n        dragFeedback: (List\u003cDraggableGridItem\u003e list, int index) {\n          return Container(\n            child: list[index].child,\n            width: 200,\n            height: 150,\n          );\n        },\n        dragPlaceHolder: (List\u003cDraggableGridItem\u003e list, int index) {\n          return PlaceHolderWidget(\n            child: Container(\n              color: Colors.white,\n            ),\n          );\n        },\n      );\n```\n### Required parameters\n\n##### gridDelegate:\nA delegate that controls the layout of the children within the GridView.\n\n##### children:\nThis property contains list of [DraggableGridItem] and it is use to show the widget inside the GridView.builder to provide the drag \u0026 drop functionality. Also, it contains isDraggable parameter which manages enable/disable the drag \u0026 drop functionality. \n\n##### dragCompletion:\nThis callback provides updated list and old and new indexes.\n\n\n### Optional parameters\n\n##### isOnlyLongPress:\nThis property contains ```bool``` value. If this property is ```false``` then it works with simple press draggable or else it works with long press. default value is 'true'. \n\n##### dragFeedback:\nWith this callback, you have to return a Widget and we will use this widget in feedback. Learn more about feedback from [Draggable](https://api.flutter.dev/flutter/widgets/Draggable-class.html#:~:text=Draggable%20class%20Null%20safety,user's%20finger%20across%20the%20screen) class. \n\n##### dragPlaceHolder:\nTWith this callback, you have to return a PlaceHolderWidget and we will use this widget in place holder. \n\n##### dragChildWhenDragging:\nWith this callback, you have to return a Widget and we will display this widget instead of child when drags are under way. Learn more about childWhenDragging from [Draggable](https://api.flutter.dev/flutter/widgets/Draggable-class.html#:~:text=Draggable%20class%20Null%20safety,user's%20finger%20across%20the%20screen) class.\n\n\n### Last But Not Least :heart_eyes: \n#### You can use all the ```GridView.builder``` properties with ```DraggableGridViewBuilder``` class.\n\n\n## Note:\nThe result returns in List. so it can be lost later, you are responsible for storing it somewhere permanent (if needed).\n\n## Guideline for contributors\nContribution towards our repository is always welcome, we request contributors to create a pull request to the develop branch only.\n\n## Guideline to report an issue/feature request\nIt would be great for us if the reporter can share the below things to understand the root cause of the issue.\n- Library version\n- Code snippet\n- Logs if applicable\n- Device specification like (Manufacturer, OS version, etc)\n- Screenshot/video with steps to reproduce the issue\n\n# LICENSE!\nFlutter Draggable GridView is [MIT-licensed](https://github.com/Mindinventory/flutter_draggable_gridview/blob/main/LICENSE \"MIT-licensed\").\n\n# Let us know!\nWe’d be really happy if you send us links to your projects where you use our component. Just send an email to sales@mindinventory.com And do let us know if you have any questions or suggestion regarding our work.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMindinventory%2Fflutter_draggable_gridview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMindinventory%2Fflutter_draggable_gridview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMindinventory%2Fflutter_draggable_gridview/lists"}