An open API service indexing awesome lists of open source software.

https://github.com/nikki1930/basicchatbot

πŸ€– A sleek Android chatbot app built with Jetpack Compose, powered by the Gemini API. It supports memory-based conversations and allows text selection and copying.
https://github.com/nikki1930/basicchatbot

ai-integration android android-application android-development chatbot compose-ui conversational-ai gemini-api generative-ai google-ai jetpack-compose kotlin machine-learning material-design material-ui

Last synced: about 1 month ago
JSON representation

πŸ€– A sleek Android chatbot app built with Jetpack Compose, powered by the Gemini API. It supports memory-based conversations and allows text selection and copying.

Awesome Lists containing this project

README

          

# πŸ€– BasicChatBot

A simple Kotlin-based Android chatbot app powered by **Google's Gemini API**, with built-in **chat memory** for contextual conversations.

---

## ✨ Features

- πŸ’¬ Real-time chat interface
- 🧠 **Context-aware memory** β€” remembers previous messages to carry context
- πŸ”— Gemini API integration for smart, conversational responses
- πŸ“‹ **Selectable & copyable messages** β€” tap and hold to copy any chat text
- πŸ“± Clean and minimal UI built with Android best practices
- βš™οΈ Kotlin + Jetpack components
- 🌐 Internet connectivity check + API error handling

---

## πŸ› οΈ Tech Stack

- **Language:** Kotlin
- **API:** Google Gemini (via REST calls)
- **Architecture:** MVVM (Model-View-ViewModel)
- **Build Tool:** Gradle (KTS)
- **IDE:** Android Studio

---

## πŸ“š What I Learned Working on BasicChatBot taught me a lot about:

- 🧩 Integrating third-party APIs β€” setting up and calling Google’s Gemini API efficiently.
- 🧠 Handling chat memory β€” preserving context for natural conversation flow.
- 🎯 State management in Android β€” especially using ViewModel and LiveData to update the UI reactively.
- πŸ’‘ Designing user-friendly UIs β€” like enabling message selection and making conversations feel intuitive.
- πŸ”’ Best practices for handling API keys β€” like storing them securely using local.properties.
- πŸ› οΈ GitHub repo management β€” including commits, pushing code, and creating a clean public repo.
- 🐞 Improving debugging skills β€” especially with network calls and response parsing.

---

## πŸš€ Future Enhancements

- πŸŽ™οΈ Voice input support
- 🌐 Multi-language chat