Skip to main content

A simple task management package.

Project description

TaskManager

TaskManager is a simple Python package for managing tasks. It's designed to be used in command-line interface (CLI) applications, providing basic task management functionality.

Description

This package was created as part of a learning project to understand Python package development and distribution. While it's not intended to be a comprehensive task management solution, it serves as a practical example of how to structure and package a Python project.

The TaskManager package provides functionality to:

  • Add tasks to a to-do list
  • Mark tasks as completed
  • Remove tasks from the list
  • View current tasks and completed tasks

What's New in 0.2.2 Release

In this release, we fixed a bug related to how the save_current_state method saves the data.json file. Previously, the file was saved in the directory where the script was executed from, which could lead to unexpected file locations. Now, the data.json file is saved in the directory where the script being executed is located, ensuring data is stored in the same directory as the executing script.

Additionally, the load_recent_state method has been updated to load the data.json file from the same directory where the executed script is located, ensuring consistency between saving and loading operations.

Usage

Here's a quick example of how to use the TaskManager effectively:

from ttask_manager.ttask_manager import TaskManager

# Create a new TaskManager instance
tm = TaskManager()

# Load existing tasks (if any)
tm.load_recent_state()

# Add multiple tasks to the to-do list
tm.add_task("Write README", "Create setup.py", "Push to GitHub", "Test the application")

# View current to-do tasks
print(tm.current_state('to-do'))

# Mark specific tasks as done
tm.task_done("Write README", "Test the application")

# View completed tasks
print(tm.current_state('done'))

# Generate a report of today's tasks
print(tm.report())

# Clear the to-do list after completing tasks
tm.clear_todo_list()

# Reset both lists if needed
tm.reset()

This example showcases how to create a TaskManager instance, load existing tasks, manage to-do and completed tasks, generate a daily report, and reset the lists as needed.

Features

  • Add multiple tasks at once
  • Remove tasks from the to-do list
  • Mark tasks as completed
  • View current to-do list and completed tasks
  • Clear to-do or completed lists
  • Reset both lists

Development

This project was primarily created as a learning exercise in Python package development. Its simplicity is intentional, and there are no plans for significant feature additions or expansions. However, if you find a bug or have a suggestion for a minor improvement, feel free to open an issue on the GitHub repository.

Notice

Due to the pressure of my studies, I will be taking a pause from further development on the TaskManager. Thank you for your understanding and support during this time.

Licensing

The code in this project is licensed under MIT license.

Author

Taha Yasser Adnan

This project is part of my journey in learning Python package development. While it may not be a groundbreaking package, it represents an important step in understanding the process of creating, packaging, and distributing Python projects.

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

ttask_manager-0.2.2.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

ttask_manager-0.2.2-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file ttask_manager-0.2.2.tar.gz.

File metadata

  • Download URL: ttask_manager-0.2.2.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for ttask_manager-0.2.2.tar.gz
Algorithm Hash digest
SHA256 45c18a4aff69e666584a036e481daaa90527036f801fb33d0b3715a84fd8a882
MD5 e8fda8b6d9159f48a1920c8bed2534d9
BLAKE2b-256 1c7c579ffd61253843a942719819b408c53c23a305f2ef1dff9473d12b75942a

See more details on using hashes here.

File details

Details for the file ttask_manager-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ttask_manager-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a3e4a968bfc7aa193a5daed4551bc0b8528a018031a1b96c42e98e44fd56c4ec
MD5 c707525326725aa30100ff360341f127
BLAKE2b-256 4156ae45f73bb310b7a9cbbcbca8719de8f8cad0ae59abca0a61c57af16f5e28

See more details on using hashes here.

Supported by

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