Skip to content

05 / 03 / 2023

YkChat

Real-time iOS messaging application


Role
iOS architecture and development
Year
2023
Credit
Logo design: @ykarcart

Overview

A messaging application that leans on modern software architecture and mature libraries to deliver a seamless experience. It employs MVVM throughout, keeping separation of concerns clear and the codebase maintainable.

Approach

Custom classes for each feature area, including incoming and outgoing message handling and audio recording, following MVVM and Clean Architecture patterns.

Realm for local storage, so messages save and retrieve efficiently offline.

Capabilities

Real-time messaging

Text, images, video and audio sent and received instantly, with sent, delivered and read status tracking.

Media and voice

Photo, video and audio sharing, with integrated recording for voice messages.

Location sharing

Users can share their current location with contacts, displayed on a map.

Accounts

Secure registration and login, customisable profiles with display names and avatars, and push notifications for incoming messages.

Stack

  • Swift
  • UIKit
  • MVVM
  • Firebase Auth
  • Firebase Realtime Database
  • Cloud Functions
  • MessageKit
  • Realm
  • AVFoundation
  • CoreLocation
  • MapKit
  • ProgressHUD