Repository navigation
Description
Hey everyone 😃 ,
After 4 long years of hard work and dedication, Jesse Squires recently deprecated one of the most widely used open source iOS projects - JSQMessagesViewController. I believe this project's popularity is evidence enough that the iOS community should continue moving it forward.
The current state of JSQMessageViewController is rock solid. It's been reiterated, battled tested over 4 years, and used by countless apps in production.
It's safe to say that JSQMessagesViewController will continue to serve the needs of developers for a great time to come, but before the day comes where this is no longer the case -- I propose we have a plan for moving forward.
My suggestions:
- We rebrand the project as
MessageKit. - The repository is hosted as an organization as opposed to under a personal account.
I think these two points are important to building an inclusive community where every contributor feels a sense of ownership, importance, and welcome.
- We port the project to Swift.
While there's nothing wrong with Obj-C, I think this is a good opportunity to consider the future of iOS development and port the project to Swift. I believe a Swift codebase will encourage a greater number of contributors and bring fresh blood to the project.
- We rally behind a centralized MessageViewController project for iOS.
Open source projects require an enormous amount of effort to maintain. Instead of building competing MessagesViewController, we should all come together to deliver the highest quality project we can on behalf of the iOS community.
Getting involved/other suggestions:
I remember at the old MessageKit repo there were countless comments from people willing to contribute.
I encourage everyone to share their thoughts and suggestions for the future of this project.
Please discuss any issues/ideas/concerns below.
Activity
jyounus commentedon Jul 17, 2017
I'd love to see the community come together on this and work on MessageKit with joined forces, rather than everyone working on their own implementation.
I've secured the MessageKit organisation on Github. If there's enough interest from the community for this project, we can move this repo over there.
For this project, I would really love to mimic the native iMessage app as much as possible. Swipe left to reveal timestamps, make the bubbles bounce when you scroll (UIDynamics), custom bubble effects like "Slam" etc. Basically keeping up with the iMessages app and having a modern UI.
Of course it would be silly to try and replicate the iMessages app for v1 of this lib, that's why we need to finalise the big picture and then start prioritising.
I know a lot of people would want to use something like ASDK/Texture. Personally I've never used it, so it would be good to get input from others.
I personally would say we create MessageKit using simply UIKit. However I'm sure we could architect it in such a way, that it would be easy enough to replace the View part with anything else (I'm thinking of the "V" inside "VIPER" here).
What are your thoughts on this?
SD10 commentedon Jul 18, 2017
@jyounus When you mentioned the MessageKit organization I thought you were talking about a webpage 😂 We would love to have that name for this project!
I agree careful planning is important in regards to architecture. There might be a more idiomatic Swift architecture opposed to doing a direct rewrite from Obj-C.
About mimicking iMessage, I'm only afraid of infringing on Apple. I believe users need to clearly recognize whether they're in iMessage or a MessageKit view controller.
I've also considered using AsyncDisplayKit/Texture. I'd have to fully understand the implications of doing so and I am cautious about adding any form of dependencies to the project.
SpaceDivePro commentedon Jul 18, 2017
@SD10 Thanks for taking the initiative to start this lib, as someone who only added JSQMessagesViewController to my app at the start of the month I am keen to get something lined up for future builds.
I am relatively new to development but I am very will to help where I can.
In terms of mimicking iMessage I agree we want it to be distinct from Apple, however I think the user flow and keeping the basic inputs the same makes sense so that use is intuitive for the user.
jyounus commentedon Jul 18, 2017
@SD10 Ha no! I only have the Github org name reserved, not a domain name! :P
Fair enough. I didn't really think it would be a problem, but who knows. Apple might have some patents on these new bubble effects they've introduced. :P
Either way, we should still go for something that's modern and simple to use from a users perspective. Like @SpaceDivePro said, something that's familiar enough to users. We could leave out the bubble effects, but everything else should be fine imo.
Keeping the number of external dependencies to a minimum would be ideal.
jessesquires commentedon Jul 18, 2017
Hey all — I would strongly suggest adding everyone to https://github.com/messageKit and moving all conversations there. 😄 This will make everything much easier for the community to organize and get started on building something new. Then I can tweet out a link and update my blog post to point to this org as the single source of truth.
@jyounus - Can you do this?
Also, I've decided that if you'll add me to this org, I can help with some initial setup. I can provide logos, etc. if you'd like to keep the same "JSQ branding" (green message bubble, etc.)
SD10 commentedon Jul 18, 2017
@jessesquires Of course you're welcome at the new org and I would love the "JSQ branding". I was planning to ask for the green message bubble logo 😅 All of this sounds great.
@jyounus When you get the chance can you transfer ownership of MessageKit or add Jesse and I as owners so we can transfer this repo there and provide some initial setup?
jyounus commentedon Jul 18, 2017
@SD10 @jessesquires done. Added you both as owners to the org. :)
itolisto commentedon Jul 19, 2017
Great initiative @SD10 I'm willing to help where I can. Glad to see everyone in the community has very interesting thoughts about the future of
MessageKitand I'm pretty sure this is the beginning of, what it will be, the most used messaging library. Long live toJSQMessagesViewController, to the ones we used it, it will always be remembered, thank you @jessesquiresbojanstef commentedon Jul 19, 2017
Oh I'm very much looking forward to contributing 😄
coreywiley commentedon Jul 19, 2017
I'm also wanting to contribute!
JSQMessagesViewControlleris a big part of my app and I have a vested interest making sure a version of it lives on. Big shout out to @jessesquires, thank you so much! Hopefully I can buy you a beer or two one day.In Jesse's blog post when talking about
JSQMessagesViewControllerhe said:I'm very interested in Jesse's opinion for the architecture of
MessageKit. An initial blueprint from the person who knows it best would be a great spark to the project.tapanprakasht commentedon Jul 19, 2017
@SD10 I would also like to be part of this initiative. :)
NikolaySohryakov commentedon Jul 19, 2017
@SD10 I'd love to put some effort in contributing too.
jessesquires commentedon Jul 19, 2017
@coreywiley i've commented at #2
mding5692 commentedon Jul 20, 2017
Would love to help out, JSQMessagesViewController is a large part of my current app so happy to put in the hours if need to.
10 remaining items
dgaedcke commentedon Jul 27, 2017
I'm not sufficiently familiar with JSQMessagesViewController to know how much of it overlaps with what they've already done in Chatto, but it might be useful if someone would list the goals for this project that are distinct from what Chatto has already built....
SD10 commentedon Jul 27, 2017
@mukyasa ASDK seems to be mentioned a lot. I'm fine with adding ASDK support as long as it's opt-in functionality. That being said, out of scope for v1.
ingeniousgenius commentedon Jul 29, 2017
I'd be up to contribute towards this. I just recently found JSQMessagesViewController and it was great. It came as a shock when I ran
pod outdatedto see that it had been deprecated but I agree a swift version would be ideal as it seems like the future for iOS development.CoolHandLuke88 commentedon Aug 1, 2017
Jesse did a amazing job and I would love to contribute to this project. I would love to help in these efforts. Not sure where to begin, but just let me know other wise when I get free time I will start going through current bug list.
Finb commentedon Aug 11, 2017
Looks great! Is it easy to replace the JSQMessagesViewController in my project with MessageKit?
iamagam commentedon Aug 19, 2017
@SD10 JSQMessagesViewController is a part of my many app so happy to put in some efforts if needed to. Thanks @jessesquires for such a wonderful library.
glennposadas commentedon Aug 23, 2017
Indeed, I commend @jessesquires for the much loved JSQMessagesViewController. Thanks be to @SD10 as well for initiating this project. :D
akerenyi commentedon Aug 24, 2017
@SD10 I'm a junior-mid level iOS developer who would like to contribute to this project. This would be my first open-source project, but I am motivated and willing to dedicate time to this, so I finally give something back to the community.
Merge pull request #1 from MessageKit/development
Merge pull request #1 from monzo/feature/nslink
LilMoke commentedon Jun 7, 2019
I do not see any comments on this. Can you tell me if you ever migrated over to MessageKit? We need to update our chat from JSQMessagesViewController to something else. Was it hard to transition.
kinoroy commentedon Feb 19, 2020
Closing since this discussion is long outdated
Merge pull request MessageKit#1 from Health2Sync/main-justin
Merge pull request #1 from zhongwuzw/fix-boundingRect-miscalculation