SwiftUI WeChat

🇨🇳 Learn how to make WeChat with SwiftUI. 微信 7.0 🟢

800
84
Swift

SwiftUI-WeChat

codebeat badge


Overview

  • I will continue to follow the development of technology, the goal is to bring SwiftUI-WeChat to an infinitely close WeChat experience. When you want to implement a function similar to WeChat, you can quickly find out how to implement this function in this project, so I believe this project will help someone.

  • The plan will be perfected until the popularity of SwiftUI, update occasionally. If you have questions about the implementation, or have better ideas, please feel free to communicate with me in issue

  • Your ★ Star is my biggest motivation

Features

  • [x] All based on SwiftUI2 (SwiftUI1 Version).
  • [x] The navigation bar changes when the homepage switches. TabView is hidden in the details page.
  • [x] Timeline: Picture layout. Play online video. The status bar navigation bar changes as you scroll through the list.
  • [x] Full support for Dark Mode

Screenshots

Light Mode Dark Mode
HomeView HomeView
ChatView ChatView
ContactView ContactView
DiscoverView DiscoverView
MomentView MomentView
MeView MeView

TODO

  • [ ] Homepage: Support left slide to delete chat content
  • [ ] Chat: keyboard processing, multi-line text box height, send content, more media types, emoji, voice, etc.
  • [ ] Timeline: pull-down refresh, pull-up loading, full-screen preview of pictures and videos, comments, likes, etc.
  • [ ] Search interface

Requirements

  • iOS 14+
  • Xcode 12+
  • Swift 5.3+

Contributors

Create by 森仔

Banner Design by @aduqin

License

SwiftUI-WeChat is released under the MIT license. See LICENSE for details.


中文

SwiftUI-WeChat

codebeat badge


项目概览

  • 我将持续关注 SwiftUI 技术的发展,目标是将 SwiftUI-WeChat 更新至无限接近微信的体验。每个人都熟悉微信,因此当您想实现类似于微信的功能时,可以通过此项目了解实现思路,因此我相信这个项目会对大家有帮助。

  • 此项目计划维护到 SwiftUI 真正流行为止。如果您对实现有疑问,或者有更好的想法,请随时在 issue 中与我交流,或者提交 PR。

  • 你的 ★ Star 是我最大的动力

功能特性

  • [x] 全部基于 SwiftUI2(SwiftUI1 版本传送门)。
  • [x] 底部导航切换时顶部导航更新,进入二级界面时底部导航隐藏。
  • [x] 朋友圈:多种宫格布局、可播放在线视频、状态栏导航栏随列表滚动变化。
  • [x] 完全支持夜间模式。
  • [x] 特殊处理、知识点中文注释

屏幕截图

Light Mode Dark Mode
HomeView HomeView
ChatView ChatView
ContactView ContactView
DiscoverView DiscoverView
MomentView MomentView
MeView MeView

项目依赖

  • iOS 14+
  • Xcode 12+
  • Swift 5.3+

贡献者

作者 森仔

Banner 设计 @aduqin

开源许可

SwiftUI-WeChat is released under the MIT license. See LICENSE for details.