base on All Platform Flutter Experience App <h1 align="center" style="border-bottom: none"> <b> <a href="https://github.com/toly1994328/FlutterUnit">FlutterUnit</a><br> </b> ⭐️ 全平台 Flutter 探索应用 ⭐️ <br> </h1> <p align="center"> FlutterUnit 是一个全平台体验应用,你可以在这里尽情体验 Flutter 带来的创造力。 </p> <p align="center"> <a href="https://github.com/toly1994328/FlutterUnit"><img src="https://img.shields.io/github/stars/toly1994328/FlutterUnit.svg?style=flat&logo=github&colorB=deeppink&label=stars"></a> <a href="https://github.com/toly1994328/FlutterUnit"><img src="https://img.shields.io/github/forks/toly1994328/FlutterUnit.svg"></a> <a href="https://opensource.org/licenses/GPL-3.0"><img src="https://img.shields.io/badge/license-GPL3.0-purple.svg" alt="License: GPL-3.0"></a> </p> <p align="center"> <b> 下载 App: </b> <a href="https://github.com/toly1994328/FlutterUnit/releases/download/v3.2.0/FlutterUnit.apk"><b> [Android] </b></a> • <a href="https://apps.apple.com/cn/app/flutter-unit/id6450545123"><b>[iOS]</b></a> • <a href="https://github.com/toly1994328/FlutterUnit/releases/download/v3.2.0/FlutterUnit.dmg"><b>[MacOS]</b></a> • <a href="https://github.com/toly1994328/FlutterUnit/releases/download/v3.2.0/FlutterUnit.exe"><b>[Windows]</b></a> • <a href="http://toly1994.com/flutter/"><b>[Web]</b></a> </p> <p align="center"><img src="./doc/screens/preview.webp" alt="FlutterUnit App" /></p> --- ### 环境与构建 #### Flutter 版本 ``` ·]>> flutter --version Flutter 3.32.0 • channel stable • https://github.com/flutter/flutter.git Framework • revision be698c48a6 (2 days ago) • 2025-05-19 12:59:14 -0700 Engine • revision 1881800949 (2 days ago) • 2025-05-19 10:54:07 -0700 Tools • Dart 3.8.0 • DevTools 2.45.1 ``` #### 构建应用 ``` ·]>> git clone https://github.com/toly1994328/FlutterUnit.git ·]>> cd FlutterUnit Build Android: ·]>> flutter build apk --target-platform --split-per-abi Build iOS: ·]>> flutter build ios Build Windows: ·]>> flutter build windows Build Linux: ·]>> flutter build linux Build web: ·]>> flutter build web ``` #### Flutter Unit 周边 - 🔥 [免费] [掘金小册 -《Flutter 入门教程》](https://juejin.cn/book/7212822723330834487) - 🔥 [掘金小册 -《Flutter 语言基础 - 梦始之地》](https://juejin.cn/book/6844733827617652750) - 🔥 [掘金小册 -《Flutter 绘制指南 - 妙笔生花》](https://juejin.im/book/6844733827265331214) - 🔥 [掘金小册 -《Flutter 手势探索 - 执掌天下》](https://juejin.cn/book/6896378716427911181) - 🔥 [掘金小册 -《Flutter 动画探索 - 流光幻影》](https://juejin.cn/book/6965102582473687071) - 🔥 [掘金小册 -《Flutter 滑动探索 - 珠联璧合》](https://juejin.cn/book/6984685333312962573) - 🔥 [掘金小册 -《Flutter 布局探索 - 薪火相传》](https://juejin.cn/book/7075958265250578469) - 🔥 [掘金小册 -《Flutter 渲染机制 - 聚沙成塔》](https://juejin.cn/book/6965102582473687071) --- - [Flutter环境配置](https://github.com/toly1994328/FlutterUnit/issues/22) - [Flutter实用插件集录 ](https://github.com/toly1994328/FlutterUnit/issues/41) - [Flutter要点集录 ](https://github.com/toly1994328/FlutterUnit/labels/point) --- #### MacOS 桌面版本组件界面 ![](./doc/screens/macos-2.webp) #### Windows 桌面版本组件界面 ![](./doc/screens/windows-1.png) > 开源不易,请我喝咖啡 ~ ![](./doc/ewm/coffee1.png) #### Star History [![Star History Chart](https://api.star-history.com/svg?repos=toly1994328/FlutterUnit&type=Date)](https://star-history.com/#toly1994328/FlutterUnit&Date) ### 一、组件的展示页面 #### 1. `300+组件收录` > Flutter源码中的可用的组件一共350个左右,纷繁复杂,也没有明确的分类标准 FlutterUnit 对`大大小小,常用不常用`的组件能收的尽量收录。并`根据个人感觉进行评星 ` `目前收录组件306个`,每个都有至少一个演示展现和代码展示。 | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6acf7b8a1d~tplv-t2oaga2asx-zoom-1.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6ad06db455~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6ad085632b~tplv-t2oaga2asx-image.image) | --- #### 2. 组件详情页 > `213个组件`全部都有详情页。对于重要的组件会详细展现 一般都会有某个演示对应的组件和属性,尽量做到细致,如果有需要补充,欢迎联系我。 `最重要的是: 所有的演示展现都是Flutter的组件形成的,而非图片,这就意味着可操作性更高。` | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6ad8ba98f1~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6afb3841c4~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6afb590185~tplv-t2oaga2asx-image.image) | | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b0ad26b14~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b13d3fb5b~tplv-t2oaga2asx-image.image) |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b15efec19~tplv-t2oaga2asx-image.image)| --- #### 3. 组件的可操作性 > 对一些操作交互的组件或有可操作性的某些组件,`提供操作演示` | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b177c5b67~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b21cc116a~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b2486b5a5~tplv-t2oaga2asx-image.image)| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b34887a94~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b3ca09b47~tplv-t2oaga2asx-image.image) |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b3d4e0253~tplv-t2oaga2asx-image.image)| --- #### 4. 相关组件的关联切换 > `相关组件通过link to 可以进行切换, 满足你的探索欲。` 如果有的关联未加入,欢迎联系我,对我来说,加个数字就行了。 | . | . | . | |------|------------|------------| |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b4a4d6005~tplv-t2oaga2asx-image.image)|![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b5066fbf0~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b5359b695~tplv-t2oaga2asx-image.image)| --- #### 5. 代码的查看和分享 > 激动人心的是,你可以通过右侧的图标`展开/隐藏 实现下面效果的代码` 并且`支持分享`,如果你想亲自体验,so,easy ! 而且`代码高亮样式可以自定义`。 | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b6badc1bb~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b6e75653c~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b72cdd78f~tplv-t2oaga2asx-image.image)| --- ### 二、全局配置 #### 1. 颜色主题 > 只提供八种颜色,可在`右滑菜单页`的`我的主题`配置,`可以拓展` | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c2e937170~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c3253c4ec~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c4f97f74d~tplv-t2oaga2asx-image.image) | --- #### 2.字体配置 > 支持全局字体设置,`可以拓展` | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c5448cb6c~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c55542837~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c5bec6c56~tplv-t2oaga2asx-image.image)| --- #### 3.item样式设置 > 支持item样式设置,`可以拓展,支持征集`,详见`Flutter Unit 1.0 征集方案` | . | . | . | |------|------------|------------| |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c7d4b5988~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c8935dfe1~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c8f90d6ec~tplv-t2oaga2asx-image.image)| --- #### 4.代码面板风格设置 > 支持代码风格设置,`可以拓展,支持征集`,详见`Flutter Unit 1.0 征集方案` | . | . | |------|------------| |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6cac86d591~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6cac7d5bc7~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6cb75e5450~tplv-t2oaga2asx-image.image)|![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6cd88c7ff9~tplv-t2oaga2asx-image.image)| --- ### 三、搜索与收藏功能 #### 1.搜索功能 > 由于Flutter中Widget比较杂乱,不太好分类,所以搜索是非常重要的 另外可以根据星级进行过滤,支持多选。目前正在考虑根据功能分类,之后会有所完善。 | . | . | . | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c1a355ad3~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c211dfc99~tplv-t2oaga2asx-image.image)| ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6c28562ec5~tplv-t2oaga2asx-image.image) | --- #### 2.收藏功能 | 添加收藏集 | 修改收藏集 | 删除收藏集 | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b7979f4ae~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6b97f00113~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6ba47f3fd2~tplv-t2oaga2asx-image.image) | | 长按右菜单滑页 | 长按左菜单滑页 | 详情内长按展示收藏菜单 | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6beb370b8b~tplv-t2oaga2asx-image.image) |![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6befe43cd2~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6bfd3cd42f~tplv-t2oaga2asx-image.image) | | 删除与数据同步 | 组件加入收藏集 | 收藏集支持多选 | |------|------------|------------| | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6ba47ab64c~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6badf6ee28~tplv-t2oaga2asx-image.image) | ![](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/5/3/171dae6bb380c7f5~tplv-t2oaga2asx-image.image) | > `FlutterUnit 2.0 `目前基本就是这么多功能,可以在Github中下载打包后的apk玩玩 希望能对你的Flutter学习有所帮助。 --- ", Assign "at most 3 tags" to the expected json: {"id":"9644","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"