Latest 1.2
License MIT
Platforms ios 8.0
Dependencies CKReusable
Frameworks UIKit, QuartzCore

A Swiftified, open source, Protocol-Orietated Messages UI Kit for iOS

Design Goals


  • Swift 3.0
  • Xcode 8
  • iOS 8


Carthage (Recommended)

github "xmkevinchen/CKMessagesKit"


platform :ios, '9.0'

target 'Your target' do
  # Comment this line if you're not using Swift and don't want to use dynamic frameworks

  pod 'CKMessagesKit', :git => '', :branch => 'master'


post_install do |installer|
  installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
          config.build_settings['SWIFT_VERSION'] = '3.0'

Getting Started

Checkout the Sample project in the repository

Use Carthage to download the dependencies of the Sample project


  1. More build-in message types support
    • Image
    • Video
    • Location
  2. Submit CKMessagesKit to CocoaPods, needs to wait CocoaPods 1.1.0.rc.2 version
  3. Async message content presenting mechanism.
  4. Try to use CKViewLayout protocol to layout message cell, instead of using massive AutoLayout constraint.

Current version


  • Refactor the message size calculation logic, centralize them into the CKMessageSizeCalculator, remove the logic from CKMessagesViewLayout
  • When connect to hardware keyboard, CKMessagesView now just update its contentInset with input toolbar size

Release Notes

Finally, CKMessagesKit was inspired by JSQMessagesViewController and LayerKit. Thanks to Authors and Contributors

However, there’re some reasons pushing me to create CKMessagesKit by myself

  • Pure Swift implementation, written in Swift 3.0
  • Nested collection UI presentation support, like using UICollectionView, UITableView in UICollectionViewCell to show such Data Card UI design
  • Protocol-Orientated Programming & SOLID Principle strictly follows

Latest podspec

    "name": "CKMessagesKit",
    "version": "1.2",
    "license": "MIT",
    "homepage": "",
    "authors": {
        "Kevin Chen": "[email protected]"
    "summary": "A Swiftified, open source, Protocol-Orietated Messages UI Kit for iOS",
    "source": {
        "git": "",
        "tag": "1.2"
    "platforms": {
        "ios": "8.0"
    "resources": "CKMessagesKit/Resources/**/*.xcassets",
    "source_files": [
    "frameworks": [
    "dependencies": {
        "CKReusable": []

Pin It on Pinterest

Share This