# flutter_template **Repository Path**: kongfun/flutter_template ## Basic Information - **Project Name**: flutter_template - **Description**: No description available - **Primary Language**: Dart - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-10-25 - **Last Updated**: 2024-11-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Flutter Template Flutter Template 是一个`高质量`、易于使用的 `Flutter 项目模板`,旨在帮助开发者`快速构建`出色的跨平台应用程序。该模板采用了 `Get 框架`、`优秀的设计模式`和`合理的文件结构`,以确保开发者能够编写出`易于维护的代码`。此外,该模板还使用了 `Isar 数据库`,以提供`卓越的性能`和`全平台支持`。 ## 清晰架构实现的 TODO LIST 效果 不要怕,非常简单,但是应有尽有,数据库持久化,全局状态管理,**因为优秀的代码组织结构,促成了非常简洁的代码就实现了一个 todo-list** ## 特点 - 使用 [Get](https://pub.dev/packages/get) 框架进行状态管理、依赖注入和路由管理,简化了应用程序的开发和维护。 - 采用模块化的设计模式,使代码结构清晰、组织良好,便于扩展和维护。 - 使用 [Isar](https://pub.dev/packages/isar) 数据库,提供高性能、跨平台的数据存储和查询功能。 - 优化的文件结构,使开发者能够轻松找到和管理项目中的各个部分。 - `dio` 网络请求框架,轻松处理网络请求,支持拦截器,支持便捷的错误处理,请求重试,请求缓存等功能。 - oauth2 `flutter_web_auth_2` 登录框架,轻松实现 github 登录,支持多平台。 - 图片加载框架`extended_image`,支持加载网络图片,支持缓存图片,支持图片加载进度条,支持图片加载失败的占位图。 - 轻松替换 app 的 icon。 - 包含一些预构建的组件和页面,以帮助开发者快速开始构建应用程序。 - 开箱即用,开发者只需要关注业务即可。 - 多语言的支持。 - 主题设置的支持。 - 灵活扩展的设置页 ## 项目结构 项目中,TodoList 应用程序的结构如下所示: ```shell ➜ lib git:(main) ✗ tree -L 2 . ├── components │ ├── add_todo_dialog.dart │ ├── code_wrapper.dart │ ├── latex.dart │ ├── markdown.dart │ ├── todo_item.dart │ └── user ├── controller │ ├── settings.dart │ ├── todo.dart │ └── user.dart ├── i18n │ └── translations.dart ├── main.dart ├── models │ ├── github_user.dart │ ├── todo.dart │ └── todo.g.dart ├── pages │ ├── home.dart │ ├── settings.dart │ ├── todo_list.dart │ └── unknown.dart ├── repository │ ├── todo_repository.dart │ └── user_repository.dart ├── routes.dart └── service └── http_service.dart ``` - `components\` 放置了一些预构建的组件,以帮助开发者快速开始构建应用程序。 - `service\` 放置应用程序的服务,如网络请求服务等等。 - `controller\` 放置了一些控制器,可以参考 [Get](https://pub.dev/packages/get)。 如何写 controller,来实现全局数据管理 - `repository\` 放置了一些数据仓库,如数据库存操作,网络操作等等,主要是处理数据的逻辑。 - `pages\` 放置了一些页面,如首页、设置页面等,其他页面放置在此。 - `i18n` 放置了一些国际化资源,以帮助开发者快速构建支持国际化的语言包。 - `models\` 放置了一些数据模型,如 Todo 模型等。 - `routes.dart` 定义了应用程序的路由。 - `main.dart` 是应用程序的入口文件,包括主题配置,多语言配置,基本不需要修改这里。 ## 快速开始 要开始使用 Flutter Template,请按照以下步骤操作: 1. 克隆此仓库: ``` git clone https://github.com/bravekingzhang/flutter_template.git ``` or 直接点我的项目的 `Use this template` button,直接通过这个模板创建一个自己的项目。 2. 进入项目目录: ``` cd flutter_template ``` 3. 获取依赖项: ``` flutter pub get ``` 4. 运行项目: ``` flutter run ``` 现在,你已经成功运行了 Flutter Template,并可以开始构建你的应用程序。 ## 项目配置 修改项目名字,请到项目的根目录下执行,**请注意 flutter 项目命名规范**,因为会体现在包名中,所以尽量取类似这样的名字 `flutter_app`,`todo_list`,`leetcode` ```shell ./rename_project.sh your_project_name ``` ## 贡献 我们欢迎任何形式的贡献!如果你有任何建议、问题或需求,请随时提交 [Issue](https://github.com/bravekingzhang/flutter_template/issues) 或 [Pull Request](https://github.com/bravekingzhang/flutter_template/pulls)。 ## 许可证 本项目采用 [MIT 许可证](https://github.com/bravekingzhang/flutter_template/blob/main/LICENSE)。 ``` ```