Warisha123 /
TASK-MANAGER-APP
A console based task manager app created in dart using vs code.
Loading repository data…
rmagdaleena2508-01 / repository
A console-based Task Reminder application built with Dart to demonstrate asynchronous programming concepts including Future, async, and await, with task completion tracking.
A console-based Task Reminder application built with Dart to demonstrate asynchronous programming concepts including Future, async, and await, with task completion tracking.
This mini project is developed as part of an App Development course, focusing on Dart fundamentals and asynchronous programming patterns essential for modern mobile application development.
The application simulates real-world scenarios where apps interact with remote servers or databases through delayed asynchronous operations.
Task class with properties:
Future.delayed() with 3-second delayasync and await keywordsThis project demonstrates:
Clone this repository
git clone <your-repository-url>
cd task-reminder-app
Run the application
dart task_reminder_app_with_completion.dart
Follow the on-screen menu
task-reminder-app/
│
├── task_reminder_app_with_completion.dart # Enhanced main application
├── README.md # Project documentation
└── GitHub_Link.txt # Repository URL
Future<T> typeasync function modifierawait keywordFuture.delayed() for simulationclass Task {
String title;
String description;
DateTime dueDate;
bool isCompleted; // NEW: Track completion status
Task({
required this.title,
required this.description,
required this.dueDate,
this.isCompleted = false, // Default to pending
});
}
List<Task> taskList = []; // Pending tasks
List<Task> completedTaskList = []; // Completed tasks
Future<void> markTaskAsCompleted(int taskIndex) async {
await Future.delayed(Duration(seconds: 3)); // Simulate DB update
Task taskToComplete = taskList[taskIndex];
taskToComplete.isCompleted = true;
completedTaskList.add(taskToComplete); // Add to completed
taskList.removeAt(taskIndex); // Remove from pending
}
The application comes with 5 pre-loaded sample tasks:
All I/O operations simulate real-world delays:
1. User loads tasks (Option 1)
→ 5 pending tasks displayed
2. User marks task #1 as done (Option 5)
→ Task moves to completed list
3. User views current tasks (Option 4)
→ Only 4 pending tasks shown
4. User views completed tasks (Option 6)
→ Shows 1 completed task with ✅ indicator
5. User exits (Option 7)
→ Summary: 4 pending, 1 completed
try {
await markTaskAsCompleted(taskNum - 1);
} catch (e) {
print('❌ Error marking task as completed: $e');
}
@override
String toString() {
String status = isCompleted ? '✅' : '⏳';
return '$status Task: $title | Due: ${dueDate.day}/${dueDate.month}/${dueDate.year}';
}
Modern mobile applications constantly interact with:
This project simulates such scenarios with added complexity of tracking task completion status, mirroring real-world to-do apps like:
| Feature | Description | Async Operation |
|---|---|---|
| Load Tasks | Fetch from "database" | 3 seconds |
| Add Task | Save new task | 3 seconds |
| View Details | Load task info | 2 seconds |
| Display Current | Show pending only | Instant |
| Mark as Done | Complete task | 3 seconds |
| View Completed | Show completed | 2 seconds |
This is an educational project. Feedback and suggestions are welcome!
MAGDALEENA R
App Development Course Mini Project
SRM Institute Of Science and Technology,Vadapalani Campus
This project is created for educational purposes as part of an App Development course.
async/await makes asynchronous code readable and maintainableNote: This is a console-based application focusing on backend logic and asynchronous programming concepts. UI implementation is intentionally excluded to emphasize core Dart fundamentals and state management.
Selected from shared topics, language and repository description—not editorial ratings.
Warisha123 /
A console based task manager app created in dart using vs code.
nu2su1tan /
ConsoleTodo – A simple console-based To Do app built with Dart. Made after learning the basics of Dart, it lets you add tasks, view them, change their status, and delete them. This project shows off my Dart skills and ability to make small but functional apps.