AIWithKMPDemo
Initial commits.
Install / Use
/learn @GaneshajDivekar/AIWithKMPDemoREADME
<p align="center">
<img src="https://github.com/EBfVince/ComposeAI/assets/24540801/02e51744-c826-4d7b-af2e-b509fb8af3f5" alt="Compose AI" />
</p>
<p align="center">An Android & iOS application ChatGPT like made with Compose Multiplatform</p>
<p align="center">
<a href="https://www.jetbrains.com/fr-fr/lp/compose-multiplatform/">
<img src="https://img.shields.io/badge/-android-brightgreen" alt="Android">
</a>
<a href="https://www.jetbrains.com/fr-fr/lp/compose-multiplatform/">
<img src="https://img.shields.io/badge/-iOS-lightgrey" alt="iOS">
</a>
<a href="https://openai.com/">
<img src="https://img.shields.io/badge/AI-OpenAI-blueviolet" alt="OpenAI">
</a>
<a href="https://gitmoji.dev">
<img src="https://img.shields.io/badge/gitmoji-%20😜%20😍-FFDD67.svg" alt="Gitmoji">
</a>
<a href="https://github.com/EBfVince/ComposeAI/stargazers">
<img alt="GitHub stars" src="https://img.shields.io/github/stars/EBfVince/ComposeAI">
</a>
</p>
Stack
- 💄 Compose Multiplatform for the UI on Android & iOS
- 🎨 Material 3 for the Design System
- 🧠 OpenAI Kotlin for OpenAI API client
- 🧭 Voyager for the navigation library
- 💡 Koin for the dependency injection framework
- 🗃️ SQLDelight for native SQLite database
- ⚙️ Multiplatform Settings for saving simple key-value data
- 🧑🎨 ImageLoader for displaying images from URL
- 🌐 Libres for resources generation
- 🔊 Napier for easy logging
- 🔨 BuildKonfig for BuildConfig for Kotlin Multiplatform Project
- 🔥 Firebase Analytics & Crashlytics for usage and crash reporting
- 💸 AdMob for ads revenue
Architecture
The app architecture is based on the latest guidelines from Google. You can take a look here for more information and here for an official example.
Gettings started
Compose AI use the OpenAI API with GPT3.5-turbo the get the responses. We need to setup your own OpenAI API key before launching the app.
- Create your OpenAI developper account here
- Create a new API key here or use an existing one
- Open the local.properties in the root of the project
- Add your key like this
openai_api_key=[YOUR OPENAI API KEY HERE]
Sources
Here are some of the websites or repositories that helped me to create this project:
I want to thank all the whole Jetbrains team for making Compose Multiplatform possible, and all the amazing community that surrounds it ❤️
