Mukh is a lightweight, fast AI chatbot application built with Flutter and Dart. It connects to the Mukh backend API powered by Hugging Face for intelligent conversations.
- 💬 Real-time chat with AI
- 🗂️ Multiple conversation management
- 🎨 Beautiful dark theme UI
- 📱 Cross-platform (iOS, Android)
- ⚡ Fast and responsive
- 🔐 Secure API communication
- State Management: Provider pattern
- API Client: Dio HTTP client
- Local Storage: SharedPreferences
- UI Framework: Flutter Material Design 3
lib/
├── config/ # App constants and configuration
├── models/ # Data models
├── providers/ # State management
├── screens/ # UI screens
├── services/ # API services
└── main.dart # App entry point
- Flutter SDK 3.24.0 or higher
- Dart 3.5.0 or higher
- Xcode (for iOS development)
- CocoaPods (for iOS dependencies)
- Clone the repository:
git clone https://github.com/yourusername/mukh_flutter.git
cd mukh_flutter- Install dependencies:
flutter pub get- Run the app:
flutter run- Apple Developer Account
- Xcode 14.0 or higher
- CocoaPods
- Update iOS deployment target:
cd ios
pod repo update
cd ..- Build for iOS:
flutter build ios --release- Open in Xcode:
open ios/Runner.xcworkspace-
Configure signing:
- Select "Runner" project
- Go to "Signing & Capabilities"
- Select your development team
- Update bundle identifier
-
Build and run on device or simulator
- Create an App Store Connect record
- Configure app information:
- App name: Mukh
- Bundle ID: com.mukh.app
- Version: 1.0.0
- Upload build via Xcode
- Submit for review
Update lib/config/constants.dart to configure:
- API base URL
- App colors and theme
- API timeouts
- Local storage keys
The app connects to the Mukh backend API. Ensure the API is running and accessible at the configured base URL.
POST /api/trpc/chat.getConversations- Get all conversationsPOST /api/trpc/chat.createConversation- Create new conversationPOST /api/trpc/chat.getMessages- Get conversation messagesPOST /api/trpc/chat.sendMessage- Send a messagePOST /api/trpc/chat.deleteConversation- Delete conversation
Run tests with:
flutter test- Optimized state management with Provider
- Efficient message rendering with ListView
- Async API calls with proper error handling
- Local caching of conversations
- HTTPS API communication
- Secure token handling
- Input validation
- Error handling and logging
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, email [email protected] or open an issue on GitHub.
- User authentication
- Conversation search
- Message export
- Voice input
- Dark/Light theme toggle
- Offline mode
- Push notifications
- Android release
Built with ❤️ by the Mukh team