Skip to main content

A console-based task management application

Project description

Console Task Manager

A console-based task management application built with Python.

PyPI version Python 3.13+ License: MIT

Installation

From PyPI (Recommended)

pip install mesumali-console-task-manager==1.0.0

From Source

  1. Clone the repository:

    git clone <repository-url>
    cd Phase_01
    
  2. Install dependencies with UV:

    uv sync
    

Running the Application

If installed via pip:

mesumali-todo

If installed from source:

uv run python -m src.main

First Run

  1. When prompted, enter your username (alphanumeric, e.g., "alice"):

    Welcome to Task Manager!
    Enter your username: alice
    
  2. The main menu will appear:

    === Task Manager (alice) ===
    1. Add Task
    2. View All Tasks
    3. Update Task
    4. Delete Task
    5. Change Task Status
    6. Exit
    
    Enter choice (1-6):
    

Basic Operations

Add a Task

Enter choice (1-6): 1
Enter task title: Buy groceries
Enter task description (optional): Milk, eggs, bread

Task 1 created successfully.

View All Tasks

Enter choice (1-6): 2

=== Your Tasks ===
[1] Buy groceries
    Description: Milk, eggs, bread
    Status: incomplete
---

Update a Task

Enter choice (1-6): 3
Enter task ID to update: 1
Enter new title (press Enter to keep current): Get groceries
Enter new description (press Enter to keep current):

Task 1 updated successfully.

Delete a Task

Enter choice (1-6): 4
Enter task ID to delete: 1

Task 1 deleted successfully.

Change Task Status

Enter choice (1-6): 5
Enter task ID: 1
Select new status:
  1. incomplete
  2. inProcessing
  3. complete
Enter choice (1-3): 3

Task 1 marked as complete.

Exit

Enter choice (1-6): 6

Goodbye!

Data Storage

Your tasks are stored in db/user_{username}.json. For example:

  • User "alice" -> db/user_alice.json
  • User "bob" -> db/user_bob.json

Tasks persist across sessions. Restart the app and log in with the same username to see your saved tasks.

Troubleshooting

"Invalid choice" error

Enter a number 1-6 corresponding to the menu options.

"Task not found" error

Use "View All Tasks" (option 2) to see valid task IDs.

"Title cannot be empty" error

Task titles are required. Enter at least one character.

Data file issues

If db/user_{username}.json is corrupted, delete it and restart. A fresh empty task list will be created.

Running Tests

uv run pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mesumali_console_task_manager-1.0.1.tar.gz (626.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mesumali_console_task_manager-1.0.1-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file mesumali_console_task_manager-1.0.1.tar.gz.

File metadata

File hashes

Hashes for mesumali_console_task_manager-1.0.1.tar.gz
Algorithm Hash digest
SHA256 6be6d5f6e3f61deedc3a3b27a95432a7fb9cd55caa4987203da39ca7708e99a1
MD5 7f179dd7b554aebafbdd4d4cbee14f93
BLAKE2b-256 0408990550375a0ece546b491c5d65f96b67b14acd01fe64e451a19bf10e1dc4

See more details on using hashes here.

File details

Details for the file mesumali_console_task_manager-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for mesumali_console_task_manager-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2b182afb7fab22e01479e2a0e13676468e992d56bbdc484956ed91f7be04584
MD5 5290176b76c1d0225bf04b3e300bd1e2
BLAKE2b-256 c61aa7d58918d0c0549880db61064327fe6a65ef86a77b39c2370e06323f55a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page