A comprehensive task and life management application that combines tasks, calendar integration, and notes to help you navigate your day effectively. All your information is stored securely on your device.
- Smart Task Lists - Create and organize multiple task lists with progress tracking
- Task Priorities - Set and cycle through priority levels (None, Low, Medium, High)
- Date-based Tasks - Schedule tasks for specific dates or mark as "Someday"
- Voice Input - Add tasks using voice commands with AI interpretation
- Task Editing - Rename, move, and delete tasks easily
- Google Calendar Sync - Import events from your Google Calendar
- Device Calendar Sync - Access and import local device calendar events
- Calendar Events List - View imported calendar items as tasks
- Regular Notes - Create and manage notes with customizable colors
- Secure Notes - PIN-protected notes for sensitive information
- Security Features - PIN management with security questions for recovery
- Color Coding - 12 different color options for note organization
- Daily Quote - Inspirational quotes to start your day
- News Feed - Stay updated with customizable news categories
- Weather - Current weather information
- Greeting - Personalized time-based greetings
- Calendar Overview - Quick view of upcoming events and tasks
- Gemini AI - Natural language task creation
- Smart Parsing - AI interprets voice input to create properly formatted tasks
- Themes - Multiple theme options for personalized appearance
- Dashboard Widgets - Toggle greeting, quote, news, and weather displays
- News Categories - Choose news category preferences
- Settings Management - Comprehensive settings for all features
- Language: Kotlin
- UI Framework: Jetpack Compose
- Architecture: MVVM
- Dependency Injection: Hilt
- Database: Room
- Async: Kotlin Coroutines + Flow
- Serialization: Kotlinx Serialization
- AI: Google Gemini API
- Android Device: Android 7.0 (API 24) or higher
- Build Tools: Android Studio (latest version recommended)
- Java: JDK 17
- Gradle: 8.13.0+ (included via wrapper)
git clone https://github.com/corey2120/My_Day.git
cd My_DayCreate or edit local.properties in the project root:
sdk.dir=/path/to/android/sdk
GEMINI_API_KEY=your_gemini_api_key_hereNote: The app will build without the Gemini API key, but AI features won't function.
./gradlew build# Connect Android device or start emulator
./gradlew installDebugOr open the project in Android Studio and click Run.
To enable Google Calendar integration, see the Google Calendar Setup Guide.
Comprehensive documentation is available in the docs/ folder:
- Google Calendar Setup
- Device Calendar Sync
- Secure Notes Feature
- PIN Management
- Full Documentation Index
# Clean build
./gradlew clean build
# Build debug APK
./gradlew assembleDebug
# Build release APK (requires keystore configuration)
./gradlew assembleRelease
# Run tests
./gradlew test
# Install on connected device
./gradlew installDebugapp/src/main/java/com/example/myday/
├── MainActivity.kt # Main entry point
├── MainViewModel.kt # Primary ViewModel
├── AppModule.kt # Hilt dependency injection
├── AppDatabase.kt # Room database configuration
├── SettingsManager.kt # DataStore preferences
├── GeminiService.kt # AI integration
├── Task.kt, TaskDao.kt # Task data models
├── Note.kt, NoteDao.kt # Note data models
├── TaskList.kt, TaskListDao.kt # Task list models
└── ui/theme/ # Theme configuration
This is a personal project and is still in active development. Suggestions and feedback are welcome.
Work in Progress - This application is actively being developed with regular updates and new features being added.
A desktop version of MyDay is available for Linux systems. See the MyDay Desktop repository.
This project is private and not yet licensed for public use.