[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-9102":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":17,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":18,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":16,"starSnapshotCount":16,"syncStatus":30,"lastSyncTime":31,"discoverSource":32},9102,"FlutterDouBan","kaina404\u002FFlutterDouBan","kaina404","🔥🔥🔥Flutter豆瓣客户端,Awesome Flutter Project,全网最100%还原豆瓣客户端。首页、书影音、小组、市集及个人中心，一个不拉。（ https:\u002F\u002Fimg.xuvip.top\u002Fdouyademo.mp4）","",null,"Dart",9103,1880,145,45,0,7,63.52,false,"main",true,[23,24,25,26],"android","dart","flutter","ios","2026-06-12 04:00:43","![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-new\u002Flogo.png)\n\n\n[![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fkaina404\u002FFlutterDouBan.svg)](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fstargazers)\n[![GitHub forks](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fkaina404\u002FFlutterDouBan.svg)](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fnetwork)\n[![GitHub issues](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002Fkaina404\u002FFlutterDouBan.svg)](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fissues) \n\n> SDK Version\n```java\nkaina404 ~ % flutter --version\nFlutter 2.5.3 • channel stable • https:\u002F\u002Fgithub.com\u002Fflutter\u002Fflutter.git\nFramework • revision 18116933e7 (4 months ago) • 2021-10-15 10:46:35 -0700\nEngine • revision d3ea636dc5\nTools • Dart 2.14.4\nkaina404 ~ % flutter doctor\nDoctor summary (to see all details, run flutter doctor -v):\n[✓] Flutter (Channel stable, 2.5.3, on macOS 11.4 20F71 darwin-arm, locale zh-Hans-CN)\n[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)\n[✓] Xcode - develop for iOS and macOS\n[✓] Chrome - develop for the web\n[✓] Android Studio (version 2020.3)\n[✓] VS Code (version 1.62.3)\n[✓] Connected device (3 available)\n```\n\n> 如果产生其他依赖无法编译的问题，可以尝试将`pubspec.yaml`中的`dependencies`中的所有依赖的\"^\"去掉，重新编译尝试。\n## [博客地址](https:\u002F\u002Fwww.jianshu.com\u002Fu\u002F1c09737416aa)\n真正的豆瓣客户端，90%还原豆瓣。首页、书影音、小组、市集及个人中心，一个不拉。项目持续更新中...\n# [演示预览(右键，新标签页面打开)](https:\u002F\u002Fimg.xuvip.top\u002Fdouyademo.mp4)\n\n**如果您觉得还可以的话，给个Star白~**\n\n# 使用Flutter开发一个豆瓣App\n   \n   * 此项目，90%还原某瓣APP，所有UI均按照某瓣来实现。\n   * 项目中的数据均来自豆瓣api真实有效数据\n   * 项目中用到了几乎所有的Flutter widget\n   * 还有两个比较大的自定义魔改源码实现特效\n   * 大年初一也在维护的项目\n   \n   > APP中所有数据均为真实数据。但是默认，对于\"书影音单个电影tab\"的数据，使用模拟数据。因为，频繁的打开关闭APP，会频繁调用\n    这个接口。接口是有调用限制的，次数过于频繁，会被锁IP。如果想看真实数据，则可以进入\n    \"我的\"，然后打开\"书影音数据来自网络\"开关后，重启APP即可。\n    \n# 下载地址\n## [打开新页面扫码下载](https:\u002F\u002Fupload-images.jianshu.io\u002Fupload_images\u002F3884536-d9adbda0e5f61c84.png?imageMogr2\u002Fauto-orient\u002Fstrip%7CimageView2\u002F2\u002Fw\u002F1240)\n#### [Release版本下载地址](https:\u002F\u002Fimg.xuvip.top\u002Fdouya_release.apk)\n\n\n![扫一扫下载体验](https:\u002F\u002Fimg.xuvip.top\u002Fdouya.png)\n\n\n   \n\n   \n#### Demo(刷不出gif图的，耐心等待一会，或者多刷几次。)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F0E95A04AE84EFE31104AC8E0A5808CB9.png)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F041919372752_04CCDD7BC1BDB6015935EE50DDF75C29F.png)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F041919374444_0B3C7C7E29941F75D0A7C944D4E352CB7.png)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F041919375761_05292CAB58428C7C77C544027FC899CC0.png)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F041919380838_07B17727ACF231C6D91914D71114A96CF.png)\n![](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-release\u002F041919381924_01CE541B98F565C72B75567A319271CA1.png)\n\n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-12-55.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-13-11.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-17-38.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-17-48.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-18-03.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-18-12.gif)\n    \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-18-23.gif)  \n \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-30-58.gif) \n  \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-31-13.gif) \n  \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-32-29.gif) \n  \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-32-41.gif) \n  \n![demo1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fdemogif\u002FMar-10-2019%2014-33-02.gif)   \n\n\n   \n# dev-open\n   \n   ### 大家可以向这个分支根据豆瓣UI做设计稿，提交代码\n\n   * 这个分支供广大Flutter开发者来学习Flutter\n   * **此分支囊括了Flutter 90%的组件的基本与组合使用**，是初学者真正实践的不错选择\n   * 在此豆芽APP的首页实现与影片详情的UI特效，基于魔改Flutter源码。有兴趣可以看看\n   * 大家想实战自己的Flutter能力，可以将某瓣APP作为设计稿，完成需求，并提交\n   * 每位开发者提交的代码，我都会在文档中进行备注\n   \n   #### 注意！！！建议使用模拟数据(mock_request.dart)\n   * 每个接口均有一定的调用限制\n   *  *大家pull下的代码，进行测试调试时，对于特定接口，返回的特定数据。尽量不要每次求请求一次。可以请求到一次真实数据后，转成json保存\n        到本地。然后，自己调试开发的时候，使用这个模拟数据即可。* [可参考mock_request.dart]\n   \n  \n\n# 未来版本计划(欢迎Flutter爱好者前来认领)\n\n **欢迎Flutter爱好者共同完成**\n   \n > 涉及到UI，可参考豆瓣。\n   \n### 萌新TASK\n    \n   * 完成任意一个未实现的按钮\n   * 完成任意一个未实现的页面\n   * 优化原有Widget\n   * 爱好者想实现但是未能实现的需求\n   * More ...\n  \n### 进阶TASK\n  \n  * 优化代码\n  * 适当缓存数据\n  * 解决卡顿(可参考：https:\u002F\u002Fflutter-io.cn\u002Fdocs\u002Ftesting\u002Fui-performance)\n  * 优化路由（可参考咸鱼方案：https:\u002F\u002Fwww.yuque.com\u002Fxytech\u002Fflutter\u002Fvf1dpf）\n  \n### 老手TASK\n\n * [接入rxdart](https:\u002F\u002Fgithub.com\u002FReactiveX\u002Frxdart)\n * [使用Fish Redux 重构](https:\u002F\u002Fwww.yuque.com\u002Fxytech\u002Fflutter\u002Fycc9ni)\n \n \n   \n# 对魔改源码或者喜欢翻源码的童鞋可以看看下面两个\n   \n * 魔改Flutter AppBar源码实现豆瓣头部特效\n \n    ![魔改Flutter AppBar源码实现豆瓣头部特效](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002F%E4%BB%BF%E8%B1%86%E7%93%A3%E5%A4%B4%E9%83%A8.gif)\n\n * 魔改源码实现电影详情抽屉特效(GIF图如果加载不出来，多刷几次)\n \n    ![抽屉特效1](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fpart1.gif)\n    \n    ![抽屉特效2](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fpart2.gif)\n    \n    ![抽屉特效3](https:\u002F\u002Fgithub.com\u002Fkaina404\u002FDouBanProject\u002Fblob\u002Fdev-0.1\u002Fpart3.gif)\n    \n    \n# 页面介绍\n \n  * 首页 pages\u002Fhome\n        \n    * homo_app_bar.dart 首页导航头\n    * home_page.dart 首页\n    * my_home_tab_bar.dart 首页tab\n    \n  * 书影音 pages\u002Fmovie\n  \n    * book_audio_video_page.dart 书影音页面\n    * detail_page.dart 影片、电视详情页面\n    * person_detail_page.dart 演员页面介绍\n    * ... 页面都有注释\n    \n  * 小组 pages\u002Fgroup\n  \n  * 市集 shop_page.dart \n    * 市集的数据使用两个webview\n    \n  * 我的 page\u002Fperson\n    \n    \n\n# 更新记录\n\n * dev-0.1\n   * 魔改源码实现电影详情抽屉特效\n   * 魔改Flutter AppBar源码实现豆瓣头部特效\n   * 优化页面逻辑\n   * 优化加载速度\n\n * master \n   * 基本网络请求框架、UI框架\n   * 已经填入了\"最为复杂的电影TAB页面\"、影视详情页面、小组页面（UI与豆瓣一致，数据使用的是热映榜）\n        * 页面上下滑动\n        * 页面上下+左右滑动\n        * 数据加载\n        * TAB页面滑动\n        * ....\n   * 作为基本版本，一些逻辑不够完善，有一些bug。\n  \n# 默认条约\n\n   此项目仅供大家交流沟通使用，不得用于任何商业以及利益活动。由此引起的责任，跟我无关。谢谢！\n\n# **如果您觉得还可以的话，给个Star白~**\n\n# Thanks\n\n\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fkaina404\u002FFlutterDouBan\u002Fblob\u002Fmaster-new\u002F48.jpg\" width=\"426px\">\n\n## Getting Started\n\nThis project is a starting point for a Flutter application.\n\nA few resources to get you started if this is your first Flutter project:\n\n- [Lab: Write your first Flutter app](https:\u002F\u002Fflutter.io\u002Fdocs\u002Fget-started\u002Fcodelab)\n- [Cookbook: Useful Flutter samples](https:\u002F\u002Fflutter.io\u002Fdocs\u002Fcookbook)\n\nFor help getting started with Flutter, view our \n[online documentation](https:\u002F\u002Fflutter.io\u002Fdocs), which offers tutorials, \nsamples, guidance on mobile development, and a full API reference.\n \n","FlutterDouBan 是一个使用 Flutter 框架开发的高度还原豆瓣客户端的开源项目。该项目几乎覆盖了豆瓣客户端的所有核心功能，包括首页、书影音、小组、市集和个人中心等模块，并且在UI设计上力求与原版保持一致。它充分利用了 Flutter 的跨平台特性，支持 Android 和 iOS 双平台，同时通过调用豆瓣 API 获取真实数据来展示内容。此外，项目中还包含了一些自定义的特效实现，以增强用户体验。此项目非常适合用于学习 Flutter 开发技术，尤其是对于想要了解如何构建复杂且功能齐全的应用程序的开发者来说是一个很好的参考案例。",2,"2026-06-11 03:21:14","top_language"]