A modern, intuitive task management app built with Jetpack Compose and Clean Architecture
⚠️ Early Development Stage
This project is actively being developed and may have bugs. We welcome contributions from the community!
- Task Management: Create, edit and delete tasks
- Priority System: Set task priorities (High, Medium, Low, None)
- Sub-tasks: Break down tasks into manageable sub-tasks
- Swipe Actions: Swipe to delete tasks with smooth animations
- Drag & Drop: Reorder tasks via intuitive drag handles
- Auto-save: Changes are saved automatically when editing a task
- Material 3: Modern design with dynamic colors
- Overall visual improvements: Improve the main visual aesthetics of the app
- Habit Tracking: Build daily routines and track streaks
- Mood Tracking: Log daily emotions and view trends
- Task Scheduling: Add due dates and reminders
- Calendar view
- Widgets: Home screen widgets for quick access
- Themes: More customization options
- Any new suggestion
- Android Studio
- Android SDK 31 (Android 12)
-
Clone the repository
git clone https://github.com/Markel15/flowstate.git cd flowstate -
Open in Android Studio
-Open Android Studio
-Select "Open an Existing Project"
-Navigate to the cloned directory
-
Build and Run
-Connect an Android device or start an emulator (API 31+)
-Click the Run button
We welcome contributions! Here's how you can help:
- Check the Issues to avoid duplicates
- Create a new issue with:
- Clear description
- Steps to reproduce
- Expected vs actual behavior
- Screenshots/videos if possible
- Device/OS information
- Check existing feature requests
- Create an issue with:
- Use case description
- Mockups/wireframes if applicable
- Priority justification
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Write tests when possible
- Update documentation when possible
- Commit your changes
git commit -m 'Add some amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
FlowState follows Clean Architecture with a clear separation of concerns:
UI Layer (Presentation)
├── ViewModels (TaskViewModel)
├── Composable Screens (TaskScreen)
└── UI State Management
Domain Layer (Business Logic)
├── Use Cases (Interactors)
├── Repository Interfaces
└── Domain Models (Task, SubTask, Priority)
Data Layer (Infrastructure)
├── Repository Implementations
├── Local Data Source (Room)
└── Data Models (Entities)
| Component | Technology |
|---|---|
| UI Framework | Jetpack Compose |
| Architecture | Clean Architecture + MVVM |
| Database | Room |
| DI | Hilt |
| Async | Kotlin Coroutines |
| Navigation | Navigation Compose |
| Animations | Compose Animation APIs |