Skip to content

Commit 1044f57

Browse files
committed
Add detailed architecture diagrams and state management workflows to README.md
This update enhances the documentation by introducing comprehensive diagrams for component architecture, task management, statistics architecture, navigation flow, and state management. These additions aim to provide a clearer understanding of the application's structure and workflows.
1 parent 214ce67 commit 1044f57

1 file changed

Lines changed: 83 additions & 92 deletions

File tree

README.md

Lines changed: 83 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -62,124 +62,115 @@ The app provides smart workflow features:
6262

6363
## 🛠️ Task Management Features
6464

65-
### Creating New Tasks
66-
67-
<p align="center">
68-
<img src="assets/07_create_task.png" width="270" alt="Create Task Form - Light Mode"/>
69-
<img src="assets/14_create_task_dark.png" width="270" alt="Create Task Form - Dark Mode"/>
70-
</p>
71-
72-
Task creation includes:
73-
- Customizable titles and descriptions
74-
- Tag selection for categorization
75-
- Deadline setting with date picker
76-
- Priority selection (Low/Medium/High)
77-
78-
### Task Details and Editing
79-
8065
<div align="center">
8166
<table>
8267
<tr>
68+
<td align="center"><img src="assets/07_create_task.png" width="250" alt="Create Task Form"/></td>
8369
<td align="center"><img src="assets/08_task_details.png" width="250" alt="Task Details View"/></td>
84-
<td align="center"><img src="assets/09_edit_task.png" width="250" alt="Task Editing Interface"/></td>
8570
</tr>
8671
<tr>
87-
<td align="center"><b>Task Details</b></td>
88-
<td align="center"><b>Task Editing</b></td>
72+
<td align="center"><b>Create New Tasks</b><br>Add titles, descriptions, tags, deadlines, and priorities</td>
73+
<td align="center"><b>Task Details</b><br>View complete information and manage task status</td>
8974
</tr>
9075
</table>
9176
</div>
9277

93-
The app supports:
94-
- Detailed task information viewing
95-
- Status transitions between workflow stages
96-
- Tag and metadata editing
97-
- Priority level adjustments
98-
99-
### Multiple Task Views
100-
101-
<p align="center">
102-
<img src="assets/10_todo_tasks.png" width="230" alt="Todo Task List"/>
103-
<img src="assets/11_in_progress_view.png" width="230" alt="In Progress Task View"/>
104-
<img src="assets/12_multiple_tasks_view.png" width="230" alt="Multiple Tasks in Different States"/>
105-
</p>
106-
107-
Task organization features:
108-
- Grouped by current status
109-
- Sorting options for different views
110-
- Clear visual separation between states
111-
- Intuitive transitions between states
112-
113-
## 📊 Statistics and Insights
114-
115-
Track your productivity with comprehensive statistics:
78+
## 📊 Statistics and Customization
11679

11780
<div align="center">
11881
<table>
11982
<tr>
120-
<td align="center"><img src="assets/04_statistics_overview.png" width="250" alt="Task Statistics - Light Mode"/></td>
121-
<td align="center"><img src="assets/13_statistics_detailed.png" width="250" alt="Task Statistics - Dark Mode"/></td>
83+
<td align="center"><img src="assets/04_statistics_overview.png" width="250" alt="Task Statistics"/></td>
84+
<td align="center"><img src="assets/05_settings_light_mode.png" width="250" alt="Settings Screen"/></td>
12285
</tr>
12386
<tr>
124-
<td align="center"><b>Light Mode Statistics</b></td>
125-
<td align="center"><b>Dark Mode Statistics</b></td>
87+
<td align="center"><b>Productivity Stats</b><br>Track completion rates and task distribution</td>
88+
<td align="center"><b>App Settings</b><br>Customize theme and app preferences</td>
12689
</tr>
12790
</table>
12891
</div>
12992

130-
The statistics dashboard provides insights on:
131-
- **Total task count** with visual distribution
132-
- **Completion rates** shown as percentage
133-
- **Task distribution by priority** (High/Medium/Low)
134-
- **Progress tracking** across workflow stages
135-
136-
## ⚙️ Settings and Customization
137-
138-
Personalize your experience with various settings:
93+
## 🖥️ Dark Mode Support
13994

14095
<p align="center">
141-
<img src="assets/05_settings_light_mode.png" width="250" alt="Settings Screen - Light Mode"/>
142-
<img src="assets/06_settings_dark_mode.png" width="250" alt="Settings Screen - Dark Mode"/>
96+
<img src="assets/15_task_details_dark.png" width="250" alt="Task Details in Dark Mode"/>
97+
<img src="assets/16_edit_task_dark.png" width="250" alt="Task Editing in Dark Mode"/>
14398
</p>
14499

145-
Customization options include:
146-
- **Theme switching** between light and dark modes
147-
- **Documentation access** for app usage help
148-
- **Feedback mechanism** for app rating
149-
- **Version information** and release details
150-
151-
## 🖥️ Dark Mode Support
152-
153-
The app offers a complete dark mode experience across all screens:
154-
155-
<div align="center">
156-
<table>
157-
<tr>
158-
<td align="center"><img src="assets/15_task_details_dark.png" width="250" alt="Task Details in Dark Mode"/></td>
159-
<td align="center"><img src="assets/16_edit_task_dark.png" width="250" alt="Task Editing in Dark Mode"/></td>
160-
</tr>
161-
<tr>
162-
<td align="center"><b>Task Details</b></td>
163-
<td align="center"><b>Task Editing</b></td>
164-
</tr>
165-
</table>
166-
</div>
167-
168-
Dark mode provides:
169-
- Reduced eye strain in low-light environments
170-
- Battery savings on OLED screens
171-
- Consistent visual styling throughout the app
172-
- Automatic adaptation to system settings
173-
174100
## 🧩 Technical Architecture
175101

176-
This application demonstrates:
177-
178-
1. **Component Hierarchy**: Root → Screen → Child Components
179-
2. **State Management**: Each component has its own StateKeeper
180-
3. **Navigation**: Type-safe navigation using Decompose
181-
4. **Dependency Injection**: Clean provision of dependencies to components
182-
5. **SaveInstanceState**: Automatic state restoration across configuration changes
102+
This application demonstrates Decompose's powerful capabilities for component-based architecture:
103+
104+
### Core Architecture
105+
106+
```mermaid
107+
graph TD
108+
A[Application] --> B[RootComponent]
109+
B --> C[TodoListComponent]
110+
B --> D[StatisticsComponent]
111+
B --> E[SettingsComponent]
112+
113+
C --> F[TaskItemComponent]
114+
C --> G[TaskEditorComponent]
115+
116+
style A fill:#f9f,stroke:#333,stroke-width:2px
117+
style B fill:#bbf,stroke:#333,stroke-width:2px
118+
style C fill:#dfd,stroke:#333,stroke-width:2px
119+
style D fill:#dfd,stroke:#333,stroke-width:2px
120+
style E fill:#dfd,stroke:#333,stroke-width:2px
121+
```
122+
123+
### Task Workflow State Management
124+
125+
```mermaid
126+
stateDiagram-v2
127+
classDef todo fill:#ffcccb,stroke:#333,stroke-width:1px
128+
classDef inProgress fill:#ffffcc,stroke:#333,stroke-width:1px
129+
classDef done fill:#ccffcc,stroke:#333,stroke-width:1px
130+
131+
[*] --> TODO : New Task
132+
133+
TODO --> IN_PROGRESS : Start Task
134+
IN_PROGRESS --> DONE : Complete Task
135+
IN_PROGRESS --> TODO : Return to Todo
136+
DONE --> IN_PROGRESS : Reopen Task
137+
138+
class TODO todo
139+
class IN_PROGRESS inProgress
140+
class DONE done
141+
```
142+
143+
### Decompose Integration with Clean Architecture
144+
145+
```mermaid
146+
graph TD
147+
subgraph Presentation
148+
A[Jetpack Compose UI] -->|Observes| B[Decompose Component]
149+
B -->|Contains| C[Component State]
150+
end
151+
152+
subgraph Domain
153+
E[Use Cases]
154+
F[Domain Models]
155+
G[Repository Interfaces]
156+
end
157+
158+
subgraph Data
159+
H[Repository Implementations]
160+
I[Data Sources]
161+
end
162+
163+
B -->|Invokes| E
164+
E -->|Uses| F
165+
E -->|Calls| G
166+
G <--Implementation--> H
167+
H -->|Accesses| I
168+
169+
style A fill:#dfd,stroke:#333,stroke-width:2px
170+
style B fill:#bbf,stroke:#333,stroke-width:2px
171+
style E fill:#ffd,stroke:#333,stroke-width:2px
172+
style H fill:#fcc,stroke:#333,stroke-width:2px
173+
```
183174

184175
## 📚 Additional Resources
185176

0 commit comments

Comments
 (0)