Skip to content

nikhilbiju67/compose-chat-ui

Repository files navigation

Compose Multiplatform Chat Interface

Simulator.Screen.Recording.-.iPhone.16.-.2024-12-26.at.14.40.10.mp4

This project is a Compose Multiplatform demonstration showcasing a chat interface. The application is designed to run seamlessly across Android, iOS, desktop, and web platforms, delivering a consistent user experience.

⭐ If you like this project, please give it a star on GitHub!

Live Demo (Open in chrome)

Features

  • Chat Interface: A responsive and intuitive chat UI designed using Jetpack Compose.
  • Multiplatform Support: Runs on Android, iOS, desktop, and web platforms with platform-specific optimizations.
  • Audio Support: Audio functionality works across all platforms, ensuring robust multimedia communication.

Tech Stack

  • ** Compose Multiplatform**: For building the user interface.
  • Audio Frameworks:
    • Platform-specific libraries for audio playback and recording.
    • Integration with VLC for desktop audio playback.
  • Modern UI/UX: Built with Compose's declarative UI for a clean, maintainable codebase.

Getting Started

Prerequisites

  • Android: Android Studio Arctic Fox or later.
  • iOS: Xcode 13 or later.
  • Desktop: Ensure VLC Media Player is installed.
  • Web: A modern browser like Chrome, Firefox Safari not supported.

Running the Project

  1. Clone the repository:
    git clone https://github.com/your-repo/compose-multiplatform-chat.git
  2. Open the project in your preferred IDE (Android Studio recommended for Android and Desktop; Xcode for iOS).
  3. Select the desired target platform and build the project.
  4. Run the application.

Future Plans

  • Improved Platform Integration:
    • Leverage native features on iOS and Android for a richer experience.
  • Add more message types:
    • Add more message types like contacts,location,docs etc.

Contribution

Contributions are welcome! If you would like to contribute:

  1. Fork the repository.
  2. Create a new branch for your feature/bug fix.
  3. Commit your changes and push to your fork.
  4. Create a pull request to the main repository.

License

This project is licensed under the MIT License.

Acknowledgments