Skip to content

Antonxie/dreamwork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WeChat Clone Flutter App

一个使用Flutter开发的微信克隆应用,实现了微信的主要界面和基础功能。

功能特性

🎯 核心功能

  • 聊天界面:完整的聊天列表和聊天详情页面
  • 联系人管理:联系人列表、详情查看、收藏功能
  • 发现页面:类似微信发现页的功能布局
  • 个人资料:用户信息展示和设置

🎨 界面特色

  • 原生微信风格:高度还原微信的UI设计
  • 响应式设计:支持Web端和移动端
  • 流畅动画:自然的页面切换和交互效果
  • 深色模式支持:适配不同使用场景

🏗️ 技术架构

  • 状态管理:使用Provider进行状态管理
  • 模块化设计:清晰的代码结构和组件分离
  • 本地资源:使用SVG图标,避免网络依赖
  • 测试覆盖:包含Widget测试确保代码质量

项目结构

lib/
├── main.dart                 # 应用入口
├── models/                   # 数据模型
│   ├── chat_conversation.dart
│   ├── chat_message.dart
│   ├── contact.dart
│   └── user.dart
├── providers/                # 状态管理
│   ├── chat_provider.dart
│   ├── contact_provider.dart
│   └── user_provider.dart
└── screens/                  # 页面组件
    ├── chat_detail_screen.dart
    ├── chat_list_screen.dart
    ├── contact_detail_screen.dart
    ├── contact_list_screen.dart
    ├── discover_screen.dart
    ├── home_screen.dart
    └── profile_screen.dart

快速开始

环境要求

  • Flutter SDK >= 3.0.0
  • Dart SDK >= 3.0.0

安装步骤

  1. 克隆项目

    git clone <repository-url>
    cd wechat_clone
  2. 安装依赖

    flutter pub get
  3. 运行应用

    Web端:

    flutter run -d web-server --web-port 8080

    移动端:

    flutter run
  4. 运行测试

    flutter test

主要依赖

  • flutter: Flutter框架
  • provider: 状态管理
  • intl: 国际化支持

开发说明

状态管理

项目使用Provider模式进行状态管理,主要包括:

  • ChatProvider: 管理聊天相关数据
  • ContactProvider: 管理联系人数据
  • UserProvider: 管理用户信息

资源管理

  • 所有图标使用SVG格式,存放在assets/images/目录
  • 支持自定义字体(可在pubspec.yaml中配置)

测试

  • Widget测试覆盖主要页面组件
  • 使用flutter test命令运行所有测试

部署

Web部署

flutter build web

构建产物在build/web/目录下。

移动端打包

# Android
flutter build apk

# iOS
flutter build ios

贡献指南

  1. Fork 项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

版本历史

  • v1.0.0 - 初始版本
    • 实现基础聊天功能
    • 联系人管理
    • 发现页面
    • 个人资料页面

许可证

本项目仅供学习和研究使用。

联系方式

如有问题或建议,请通过以下方式联系:


注意:本项目仅为技术学习和演示目的,不用于商业用途。

About

A place where dreams converge and link.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published