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

https://github.com/nikki1930/basicchatbot


https://github.com/nikki1930/basicchatbot

Last synced: 17 days ago
JSON representation

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