Skip to content

Commit 1e1a9a1

Browse files
committed
Task Flow
1 parent d8cb7e2 commit 1e1a9a1

14 files changed

Lines changed: 189 additions & 47 deletions

README.md

Lines changed: 150 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,156 @@
1-
# task_flow
1+
# Task Flow - Smart Task Management App
22

3-
A new Flutter project.
3+
**From Chaos to Clarity - Stay Organized, Stay Focused.**
44

5-
## Getting Started
5+
Task Flow is a Flutter + Firebase-powered task management app designed to simplify productivity. With seamless task creation, reminders, and real-time cloud sync, it helps you stay in control of your daily goals across devices.
66

7-
This project is a starting point for a Flutter application.
7+
---
88

9-
A few resources to get you started if this is your first Flutter project:
9+
## 📱 Screenshots
1010

11-
- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab)
12-
- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook)
11+
| Home (Light) | Home (Dark) | Add Task | Drawer |
12+
|---------------|--------------|-----------|---------|
13+
| ![Home Light](assets/home_light.png) | ![Home Dark](assets/home_dark.png) | ![Add Task](assets/add_task.png) | ![Drawer](assets/drawer.png) |
1314

14-
For help getting started with Flutter development, view the
15-
[online documentation](https://docs.flutter.dev/), which offers tutorials,
16-
samples, guidance on mobile development, and a full API reference.
15+
16+
---
17+
18+
## Features
19+
20+
**Firebase Authentication** - Secure login & signup using email and password.
21+
**Task CRUD Operations** - Add, edit, delete, and reorder tasks in real-time.
22+
**Per-User Cloud Sync** - Each user’s tasks are stored under their unique UID in Firestore.
23+
**Smart Reminders** - Get notified about upcoming tasks via local notifications.
24+
**Customizable Themes** - Light, Dark, and System modes supported.
25+
**Offline Support** - Tasks cached locally; auto-syncs when reconnected.
26+
**Modern UX** - Smooth transitions, Cupertino bottom sheets.
27+
28+
---
29+
30+
## Tech Stack
31+
32+
| Layer | Technology |
33+
|--------|-------------|
34+
| **Framework** | Flutter |
35+
| **State Management** | Provider |
36+
| **Backend** | Firebase Authentication & Firestore |
37+
| **Local Storage** | Shared Preferences |
38+
| **Notifications** | Flutter Local Notifications + Permission Handler |
39+
| **UI Frameworks** | Google Fonts |
40+
| **Other Packages** | modal_bottom_sheet, intl, permission_handler, provider |
41+
42+
---
43+
44+
## Installation & Setup
45+
46+
### 1️⃣ Prerequisites
47+
- Flutter SDK
48+
- Firebase project (Firestore + Authentication)
49+
- Android Studio / VS Code
50+
51+
### 2️⃣ Clone Repository
52+
```bash
53+
git clone https://github.com/yourusername/task_flow.git
54+
cd task_flow
55+
```
56+
57+
### 3️⃣ Install Dependencies
58+
```bash
59+
flutter pub get
60+
```
61+
62+
### 4️⃣ Setup Firebase
63+
1. Create a Firebase project.
64+
2. Enable Authentication (Email/Password) and Firestore Database.
65+
3. Download `google-services.json` and place it in:
66+
```
67+
android/app/google-services.json
68+
```
69+
4. Add your Firebase configuration in:
70+
```dart
71+
Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
72+
```
73+
74+
### 5️⃣ Run the App
75+
```bash
76+
flutter run
77+
```
78+
79+
---
80+
81+
## Firestore Security Rules
82+
83+
```js
84+
rules_version = '2';
85+
service cloud.firestore {
86+
match /databases/{database}/documents {
87+
match /users/{uid}/tasks/{taskId} {
88+
allow read, write: if request.auth != null && request.auth.uid == uid;
89+
}
90+
}
91+
}
92+
```
93+
94+
These rules ensure users can only access their own tasks.
95+
96+
---
97+
98+
## UI Highlights
99+
100+
- Animated bottom sheets with Cupertino transitions
101+
- Minimalist drawer navigation
102+
- Snackbars for all user feedback
103+
- Custom text fields, buttons, and date/time pickers
104+
- Smooth light/dark theme switching
105+
106+
---
107+
108+
## Core Functionalities
109+
110+
| Module | Description |
111+
|--------|-------------|
112+
| **Auth Service** | Handles Firebase login/logout/register |
113+
| **Task Provider** | Manages Firestore task operations |
114+
| **Theme Provider** | Toggles between light/dark/system modes |
115+
| **Notification Service** | Schedules, cancels, and handles reminders |
116+
117+
---
118+
119+
## Testing
120+
121+
Run widget & integration tests:
122+
123+
```bash
124+
flutter test
125+
```
126+
127+
---
128+
129+
## Build Release (Android)
130+
131+
```bash
132+
flutter build apk --release
133+
```
134+
135+
Generated file:
136+
```
137+
build/app/outputs/flutter-apk/app-release.apk
138+
```
139+
140+
---
141+
142+
## 👨‍💻 Developer
143+
144+
**Muhammad Saad Jamal**
145+
Flutter Developer | Firebase Enthusiast
146+
🌐 [Linkedin](https://www.linkedin.com/in/muhammadsaadjamal/)
147+
✉️ saadj4775@gmail.com
148+
149+
---
150+
151+
## Future Enhancements
152+
153+
- Task sharing & collaboration
154+
- Calendar view integration
155+
- Smart task prioritization using AI
156+
- Cross-platform desktop & web support

assets/add_task.png

2 MB
Loading

assets/app_logo1.png

-118 KB
Binary file not shown.

assets/drawer.png

1.89 MB
Loading

assets/home_dark.png

1.87 MB
Loading

assets/home_light.png

2.23 MB
Loading

assets/home_screen.png

-18.5 KB
Binary file not shown.

assets/login_screen.png

-44 KB
Binary file not shown.

assets/signup_screen.png

-47.2 KB
Binary file not shown.

assets/splash_screen.png

-83.4 KB
Binary file not shown.

0 commit comments

Comments
 (0)