| JSQMessages.xcodeproj | ||
| JSQMessages.xcworkspace | ||
| JSQMessagesDemo | ||
| JSQMessagesTests | ||
| JSQMessagesViewController | ||
| Screenshots | ||
| .gitignore | ||
| .travis.yml | ||
| CONTRIBUTING.md | ||
| JSQMessagesViewController.podspec | ||
| LICENSE | ||
| Podfile | ||
| Podfile.lock | ||
| README.md | ||
JSQMessagesViewController
An elegant messages UI framework for iOS
Features
- Highly configurable & customizable
- Data detectors
- Timestamps
- Avatars
- Custom chat bubbles
- Subtitles
- Arbitrary message sizes
- Copy & paste messages
- Group chat
- Smooth keyboard animations
- UIDynamics for springy bubbles
- Dynamic input text view resizing
- Smooth animations
- Universal
Requirements
- iOS 7.0+
- ARC
- JSQSystemSoundPlayer
- Need support for iOS 6? See branch
iOS6_support_stable
Installation
pod 'JSQMessagesViewController'
Otherwise, drag the JSQMessagesViewController/ folder to your project. Install JSQSystemSoundPlayer and add the QuartzCore.framework.
NOTE:
This repo was formerly named
MessagesTableViewController.And this pod was formerly named
JSMessagesViewController.
Getting Started
-
Demo project
- There's a fucking sweet demo project:
JSQMessages.xcworkspace. - Run
pod installfirst.
- There's a fucking sweet demo project:
-
Model
- Your model objects should conform to the
JSQMessageDataprotocol. - However, you may use the provided
JSQMessageclass.
- Your model objects should conform to the
-
View Controller
- Subclass
JSQMessagesViewController. - Implement the required methods in the
JSQMessagesCollectionViewDataSourceprotocol. - Implement the required methods in the
JSQMessagesCollectionViewDelegateFlowLayoutprotocol.
- Subclass
-
Customizing
- The demo project is well-commented. This should help you configure your view however you like.
Documentation
Read the fucking documentation, available here via @CocoaDocs.
Contributing
Please follow these sweet contribution guidelines.
Donate
Support the development of this free, open-source framework! Donate via Square Cash.
Send $1 Just saying thanks!
Send $5 This control is great!
Send $10 This totally saved me time!
Send $25 I want new features!
Send $50 I love this project!
Credits
Created by @jesse_squires, a programming-motherfucker.
- Assets extracted using @0xced / iOS-Artwork-Extractor.
- Originally inspired by @soffes / SSMessagingViewController.
- Many thanks to the contributors of this project.
About
I initially developed this control to use in Hemoglobe for private messages between users.
As it turns out, messaging is a popular thing that iOS devs and users want. Thus, I am supporting this project in my free time and have added features way beyond what Hemoglobe ever needed.
Check out my work at Hexed Bits.
Apps Using This Control
- Hemoglobe
- Schools App
- Spabbit
- Instaply
- Loopse
- Oxwall Messenger
- FourChat
- Quick Text Message
- Libraries for developers
- Buhz|Hyve
- AwesomeChat
License
JSQMessagesViewController is released under an MIT License. See LICENSE for details.
Copyright © 2014 Jesse Squires.
Please provide attribution, it is greatly appreciated.




