Skip to content

xmaihh/FlutterHub

Repository files navigation

🚀 FlutterHub - WanAndroid Client

Flutter Dart GitHub Actions GitHub release (latest by date) License

使用 Flutter 开发的 WanAndroid 客户端,旨在展示 Flutter 应用开发的完整流程及工程结构。

核心功能技术要点项目结构开始使用构建部署

✨ 核心功能

  • 账号登录、退出登录
  • 主题切换功能
  • 多语言支持
  • 登录状态持久化
  • 响应式设计,支持多平台

🔍 技术要点

  1. 网络请求
  2. 数据处理
    • Json 序列化与反序列化
    • Dart Model 类自动生成
  3. 状态管理
    • 全局状态:语言、主题、登录状态
  4. 本地存储
    • 持久化用户登录信息
    • 本地缓存管理
  5. 国际化
    • 使用 Intl 包
    • ARB 文件管理多语言

📁 项目结构

lib/
├── api/          # 网络请求相关
├── common/       # 通用工具类和常量
├── l10n/         # 国际化相关
├── models/       # 数据模型
├── states/       # 全局状态管理
├── routes/       # 路由页面
├── utils/        # 工具类
└── widgets/      # 自定义组件

项目根目录/
├── android/      # Android 平台相关
├── ios/          # iOS 平台相关
├── windows/      # Windows 平台相关
├── macos/        # macos 平台相关
├── linux/        # linux 平台相关
├── web/          # Web 平台相关
├── fonts/        # 字体文件
├── imgs/         # 图片资源
├── jsons/        # Json 模板文件
└── l10n-arb/     # 多语言 arb 文件

📱 Screenshots

📱 Mobile Experience

Home Screen Settings Message TODO Favorites Signup Login About
Mobile Home Mobile Settings Mobile Message Mobile TODO Mobile Favorites Mobile Signup Mobile Login Mobile About

🖥️ Windows Desktop Experience

Dashboard View Analysis Screen
Desktop Dashboard Desktop Analysis

🚀 开始使用

环境要求

flutter --version
Flutter 3.24.4 • channel stable
Dart 3.5.4

安装与运行

  1. 克隆项目
git clone https://github.com/xmaihh/FlutterHub.git -b fl_wan
cd FlutterHub
  1. 安装依赖
flutter pub get
  1. 运行项目
# 普通运行
flutter run

# Web 运行(解决 CORS 问题)
flutter run -d chrome --web-browser-flag "--disable-web-security"

⚙️ 构建部署

项目使用 GitHub Actions 自动构建和发布,支持以下平台:

  • Windows (.exe)
  • macOS (.dmg)
  • Linux
  • Android (.apk)
  • iOS (.ipa)
  • Web

触发条件:

  • 推送到fl_wan分支
  • 手动触发工作流程

主要步骤包括:

  • 配置 Flutter 环境
  • 安装依赖
  • 根据 Git commit count 更新 pubspec.yaml 中的版本号
  • 使用矩阵策略为不同平台构建应用(Android、iOS、Web、Linux、Windows、macOS)
  • 创建 GitHub 发布版本
  • 上传构建产物

查看我们的工作流程配置文件workflow configuration了解详情。

手动构建

# Windows
flutter build windows

# macOS
flutter build macos

# Linux
flutter build linux

# Android
flutter build apk

# iOS
flutter build ios --no-codesign

# web
flutter build web --base-href=/flutterhub/

# 生成代码
flutter pub run build_runner build --delete-conflicting-outputs

📦 常量配置

项目使用统一的常量管理,包含:

  • API 相关常量(接口地址、超时设置等)
  • 缓存相关常量
  • UI 相关常量(间距、圆角、颜色等)
  • 字体和动画配置
  • 错误信息
  • 应用信息

详见 lib/common/constants.dart

🤝 贡献代码

欢迎提交 Issue 和 Pull Request。

📄 开源协议

本项目基于 MIT 协议开源,详见 LICENSE 文件。

🙏 致谢


Made with ❤️ by xmaihh

⭐️ 如果这个项目帮助到你,欢迎点星鼓励!