A modern Android application for tutors to manage students, track progress, and organize tutoring sessions built with Jetpack Compose and Clean Architecture.
- Google Sign-In Authentication - Secure login using Google OAuth
- Student Management - Add, view, and organize students
- Group Management - Organize students into groups
- Home Dashboard - Overview of tutoring activities
- Modern UI - Built with Jetpack Compose and Material Design 3
- Edge-to-Edge Display - Immersive full-screen experience
- UI Framework: Jetpack Compose
- Navigation: Compose Destinations
- Dependency Injection: Dagger Hilt
- State Management: Orbit MVI
- Networking: Retrofit + OkHttp
- Authentication: Firebase Auth + Google Sign-In
- Image Loading: Coil
- Async: Kotlin Coroutines + Flow
- Build System: Gradle (Kotlin DSL)
git clone https://github.com/yourusername/tutorLog.git
cd tutorLog- Go to Firebase Console
- Create a new project or use an existing one
- Add an Android app with package name:
com.example.tutorlog - Download
google-services.jsonand place it in theapp/directory - Enable Google Sign-In in Firebase Authentication
./gradlew clean build
./gradlew installDebugOr simply open the project in Android Studio and click Run.
- Login Screen: Google Sign-In integration
- User Creation: Store user data locally and in Firebase
- Session Management: Persist user session with SharedPreferences
- User profile display
- Quick access to students
- Navigation to different sections
- Bottom navigation bar
- View all students
- Organize students into groups
- Add new students
- Toggle between individual and group views
- minSdk: 24 (Android 7.0)
- targetSdk: 35 (Android 15)
- compileSdk: 35
The app uses a custom design system with:
- Color Palette: Dark theme optimized
- Typography: Custom text styles
- Components: Reusable composable components
- LocalColors: Compose local provider for consistent theming
- Backend API integration is in progress
- Some features are under development
- Limited offline support
Samarth Raj
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- 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
For support, email [email protected] or open an issue in the repository.
Made with ❤️ using Jetpack Compose