An intelligent chat application powered by LLM Groq.com with advanced features
XChatAi is a modern Android application that provides seamless interaction with advanced AI models through an intuitive and beautiful interface. Built with Jetpack Compose and following Material Design 3 guidelines, it offers a ChatGPT-like experience with unique features including real-time typewriter effects, thinking process visualization, and comprehensive conversation management.
- π€ Dual AI Models: By LLM List by groq.com
- π¬ ChatGPT-Style UI: Character-by-character typewriter effect with blinking cursor
- π§ Thinking Process: Visualize AI's reasoning with expandable thinking sections
- π Rich Markdown: Full support for code blocks, headings, lists, and more
- π¨ Material Design 3: Dynamic colors, dark mode, and modern UI
- π Secure Authentication: Google Sign-In with Firebase
- π Rate Limiting: Smart quota management with real-time tracking
- πΎ Persistent Storage: Offline conversation history with Room database
- Typewriter Effect: Real-time character-by-character text streaming
- Thinking Indicator: Visual feedback showing AI processing state
- Smooth Animations: Fluid transitions and interactive elements
- Auto-scroll: Automatic scrolling during message streaming
- Search Conversations: Quick search through chat history
- Profile Integration: Google account with profile photo display
- Multiple Conversations: Create and manage unlimited chat sessions
- Conversation History: Persistent storage of all conversations
- Rename Conversations: Customize conversation titles
- Delete Conversations: Remove unwanted chat history
- Context Preservation: Each conversation maintains its own context
- Timestamps: Track when messages were sent
- Dark/Light Mode: System-adaptive or manual theme switching
- Dynamic Colors: Material You color scheme (Android 12+)
- AI Model Selection: Switch between DeepSeek R1 and Llama models
- Backup & Restore: Export and import conversation data
- Markdown Rendering:
- Code blocks with syntax highlighting
- Headers (H1, H2, H3)
- Bold text formatting
- Bullet and numbered lists
- Inline code snippets
- Copy Functionality: Copy code blocks and thinking processes
- DeepSeek Thinking: View AI's reasoning process in
<think>tags - Expandable Sections: Collapse/expand thinking process
- Rate Limiting: 20 requests per 30 minutes per user
- Real-time Tracking: Live quota display in app bar
- Warning System: Alerts when approaching quota limit
- Firebase Sync: Server-side rate limit enforcement
- Smart Polling: Pauses updates while user is typing
- Google Sign-In: Secure authentication with Firebase
- Language: Kotlin 1.9+
- UI Framework: Jetpack Compose
- Architecture: MVVM (Model-View-ViewModel)
- Minimum SDK: Android 8.0 (API 26)
- Target SDK: Android 14 (API 34)
- androidx.compose.material3:material3
- androidx.compose.ui:ui
- androidx.activity:activity-compose
- io.coil-kt:coil-compose (Image loading)
- androidx.lifecycle:lifecycle-viewmodel-ktx
- androidx.lifecycle:lifecycle-runtime-compose
- androidx.navigation:navigation-compose
- androidx.room:room-runtime
- androidx.room:room-ktx
- com.squareup.retrofit2:retrofit
- com.squareup.retrofit2:converter-gson
- com.squareup.okhttp3:logging-interceptor
- com.google.firebase:firebase-auth
- com.google.firebase:firebase-database
- com.google.android.gms:play-services-auth
- org.jetbrains.kotlinx:kotlinx-coroutines-android
- com.google.code.gson:gson
- Login: Sign in with Google account
- Start Chat: Tap "New Chat" or send first message
- Send Message: Type message and press send button
- View Response: Watch AI response appear character-by-character
- Explore Thinking: Expand thinking section for DeepSeek R1 model
- Tap copy icon on code block header
- Code is copied to clipboard
- Long-press conversation to rename
- Tap delete icon to remove conversation
- Use search bar to find specific chats
- Go to Settings
- Tap "Backup Data"
- Share exported JSON file
- Go to Settings
- Tap "Restore Data"
- Select backup file
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add some AmazingFeature') - Push to branch (
git push origin feature/AmazingFeature) - Open Pull Request
- Follow Kotlin Coding Conventions
- Use meaningful variable and function names
- Add comments for complex logic
- Write unit tests for new features
- Markdown parsing may fail on extremely nested structures
- Rate limit counter may briefly desync during rapid requests
- Very long code blocks may cause performance issues on low-end devices
- Groq - For providing LLM Model List AI inference
- Firebase - For authentication and database
- Material Design - For design guidelines
- Jetpack Compose - For modern UI toolkit
Developer: Gustyx-Power
Email: gustiadityamuzaky08@gmail.com
Telegram: @GustyxPower
Xtra Manager Software Community: Join Here