This mobile app is my submission for Preliminary Round of Naver Viet Nam AI Hackathon. This app is built with Jetpack Compose (100% declarative UI), language programming is kotlin.
- Clone this repository
- Open the project in Android Studio
- Sync the project with Gradle files
- Build and run the app on an Android device or emulator (API level 26+, Java 17)
✍️ APK Download: Link APK - github
Installation Instructions:
- Download the APK file from the link above
- Enable "Install from unknown sources" in your Android settings
- Install the APK on your device (Android 8.0+ required)
✍️ Link youtube
- Time Manager is a comprehensive Android application built with Jetpack Compose that helps users organize their daily schedules and improve productivity. The app combines event scheduling, focus timer functionality, and intelligent notifications in a beautiful, modern interface with a cohesive pink theme design.
- Users can create, edit, and manage events with detailed categorization, set focus sessions for deep work, and receive timely reminders for upcoming activities.
1. Event Management:
- Create, edit, and delete events with details, such as: title, notes, date, time, and category (Work, Personal, Study, Meeting,...), or any custom category.
- Set reminders for important events to receive notifications in Notification Screen.
- View events in a clean, organized list format.
2. Focus Timer:
- Start, pause, and reset a focus timer to help users concentrate on tasks.
- Pre-defined timer sessions (Quick Focus 15min, Deep Work 45min, Short Break 5min).
- Create custom timer sessions with personalized durations.
3. Notifications:
- View all upcoming events with enabled reminders
- Real-time countdown display showing time until events
- Empty state handling for no upcoming reminders
4. User Interface:
- Responsive bottom navigation between screens (Home, Timer, Notifications and Profile)
5. Data Persistence:
- Local data storage using Room database to save events and user profile.
- Data persistence across app sessions.
6. Navigation Structure:
- Home Screen (Event calendar and management)
- Timer Screen (Focus timer functionality)
- Notification Screen (Upcoming reminders)
- Profile Screen (Future user settings)
1. Smart Time Management
- Integration of both scheduling and focus timer in one app
- Custom category creation with color selection
- Flexible timer sessions for different work patterns
2. User Experience Focus
- Intuitive bottom sheet dialogs for creating/editing events
- Comprehensive empty states and error handling
- Responsive design adapting to different screen sizes
Frontend:
- Jetpack Compose (100% declarative UI)
- Material 3 Design System
- Navigation Compose for screen transitions
- Compose Animation for smooth transitions
Architecture & Patterns:
- MVVM (Model-View-ViewModel) architecture
- Repository pattern for data management
- Dependency Injection with Hilt
- StateFlow for reactive state management
Data & Storage:
- Room Database for local storage
- DataStore for user preferences
Architecture Overview:
UI Layer (Compose) ↓ ViewModel Layer ↓ Repository Layer ↓ Data Sources (Room Database, DataStore)
Key Components:
- EventViewModel: Manages event state and business logic
- EventRepository: Abstracts data access operations
- EventDao: Room DAO for database operations.
- Complete Firebase Authentication and Cloud Firestore integration for user accounts and cloud data sync.
- User authentication with email/password, Google and Facebook sign-in options.
- Real-time data synchronization across devices.
- Shared calendars for teams or families.
- In HomeScreen: Add calendar view (monthly/weekly) for better event visualization.
- In ProfileScreen: Implement user settings, theme customization, and profile management.
- Smart event scheduling suggestions
- Automatic category detection
- Break time recommendations
- Voice-to-text event creation. For example: "I have a meeting online tonight at 7 PM".
- Multi-language supports.