2017. Jul 19.
When I started to implement my first chat application I really didn’t have any clue how the database structure should look like. Of course I had made several changes through the years, but the basic Message and Recent item structure remained the same. Although the original structure caused several issues which became more and more annoying.
With version 3.1 these database related issues are solved now. We don’t store Recent items at Firebase any more. The conversation related information is generated and stored only locally. Also every user has his own Message path now. So everybody can control his own messages without touching the other users’ messages.
Several UI changes have also been performed along with few bug fixes. Please check the latest implementation and let me know what you think. :)
Chat user interface
2017. Jul 17.
I like JSQMessagesViewController. I really do. But as we can see now, JSQMessagesViewController is no longer officially supported or maintained. It’s sad. I would have been really happy if I could use a well maintained chat user interface as I did before.
Anyway I was wondering how difficult it would be to implement a chat UI from scratch. I had started to design my solution a few weeks ago, and now it seems to be a life saver to have a ready to use implementation.
RCMessageKit is definitely not as complex as JSQMessagesViewController was, but it might be an advantage instead of a disadvantage. You can have the 1.0 version now. I hope more and more features will be implemented in the near future.
2017. Jun 2.
It’s been more than 3 years now, that I have started to implement my first chat application. Don’t ask why, I don’t know the answer either. But it’s a fact, implementing chat applications became a part of my life.
There were lot’s of different variations. First I started with a Parse only chat, then I continued with a Parse + Firebase combination, and when Parse was shut down I switched to a Firebase only solution. Since Firebase local data store was not reliable enough, so I started to use Realm for local caching.
Later on I added Audio and Video calling features, this way the app started to look more like an all-in-one messenger rather than a simple chat application.
Here we are now. But there are lot’s of things to do. I am currently working on version 3.0. More and more features are coming up. Stay tuned. :)