Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Chatify Header

🚀 Overview

Chatify is a full-stack, real-time chat application that demonstrates modern Android and server-side Kotlin development. It includes:

  • A Ktor WebSocket server that handles user connections, avatar data, and message broadcasting.
  • A Jetpack Compose client app where users pick avatars, set a nickname, and join a shared group chat room.

✨ Features

✅ Real-time messaging powered by Ktor WebSockets
Avatar selection — choose from a list served by the backend
Nickname setup — shown in chat messages
Group chat room where all users can communicate
Reactive UI with Jetpack Compose


🏗️ Tech Stack

LayerTechnology
BackendKtor (WebSockets, JSON serialization, Exposed ORM, Kotlin Coroutines)
DatabaseH2 (via Exposed)
ClientJetpack Compose
NetworkingKtor Client (CIO engine, WebSocket support)
Serializationkotlinx.serialization
Dependency InjectionHilt
State ManagementKotlin Flow + ViewModel

📱 App Flow

1️⃣ Avatar Selection The client requests an avatar list from the server. The user chooses one and enters a nickname.

2️⃣ Join Chat Room After submitting, the app navigates to the group chat screen.

3️⃣ Real-Time Messaging Messages are exchanged instantly via WebSocket. User messages are styled separately (mine vs. others).


📱 Screenshots

About

Full-stack chat app built with Ktor and Jetpack Compose

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages