Study the code structure of a complete iOS chat app to understand how to build messaging UI in Swift.
Use TSWeChat as a starting template when building a custom iOS chat feature, adapting the message cell layouts and audio playback logic.
Learn how to integrate CocoaPods libraries like RxSwift, Kingfisher, and Alamofire together in a real Swift project.
Run the demo in Xcode to preview a WeChat-style interface without connecting to any backend server.
Requires CocoaPods installed and Xcode 10 or later, run pod install before opening the workspace file.
TSWeChat is an iOS app written in Swift 5 that replicates the look and core messaging features of WeChat, the popular Chinese social messaging platform. It is not a working replacement for WeChat in terms of connecting to WeChat's servers, it is a demonstration project showing how a chat application of that style can be built from scratch on iOS. The app supports sending text messages with custom emoji expressions, photos, and voice recordings. Audio files are recorded in WAV format and automatically converted to AMR, a format that transfers more cleanly to Android devices. Photos are cached locally using the Kingfisher library, and after a successful upload the local filename is renamed to a hash of the remote image link to keep things organized. Voice messages are cached and downloaded on demand via the Alamofire networking library. All the conversation data in the demo is loaded from JSON files rather than a live server. The project uses ObjectMapper to convert that JSON into Swift model objects, and the overall code structure is organized by feature area: messages, contacts, login, and shared UI utilities each live in their own folder. RxSwift and SnapKit are among the other third-party libraries used for reactive logic and layout. The project requires CocoaPods to install its dependencies, Xcode 10 or later, and a device or simulator running iOS 10 or above. Running pod install and then opening the workspace file is enough to get a working preview of the interface. The README includes a to-do list covering features the author had not yet built at the time of writing, including a photo album picker, GIF support, video messages, an address book, and a timeline view. The project is released under the MIT license.
← hilen on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.