Skip to content

IlyaSibogatov/ComposeChatExample-client

Repository files navigation

ComposeChatExample - Client

Requirements for the application to be developed:

  • Authorization/Registration
  • Creating a user chat
  • Exchange of messages using websockets

The project used:

  • Ktor websockets

  • Ktor client (instead of Retrofit)

  • Jetpack Compose

  • Hilt

  • Coroutines/Flow

  • Event providers (Channels)

  • Media Player

  • Shared Preferences

    Also used mongoDB and ktor server side https://github.com/IlyaSibogatov/ComposeChatExample-server

    Onboard screen

    Screen for logging in or creating an account, if no account is available.

    onboarding_screen

    Chat list screen

    Display of the list of available rooms, creation of public and private chats, search through the list is implemented.

    chat_list_page

    Chat detail screen

    Realised messaging using websocket's, possibility to delete or edit own messages.

    chat_page

    Profile screen

    Display user's online status, self information, friends list.

    profile_page

    Upload media screen`s

    upload_image_page upload_video_page

    Video player screen

    video_player_page

    Notification screen

    notification_page

    Settings screen

    Currently implemented:

  • Language change. Available in two languages - Russian - English

  • Themes change. System, Light, Dark

  • Communication with technical support (Send email)

  • Remove an account

  • Switch notification enabled

  • User logout from the account.

    settings_page settings_dark_theme_on settings_ru_page

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages