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. It has evolved into a more robust solution for task management, incorporating features that allow users to easily add, remove, and track tasks along with their priorities.

The TaskManager package provides functionality to:

  • Add tasks to a to-do list with customizable priority levels
  • Mark tasks as completed
  • Remove tasks from the list
  • View current tasks and completed tasks
  • Generate detailed reports of tasks
  • Support for both string and integer priority types

Usage

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

from ttask_manager import TaskManager

# Create a new TaskManager instance
tm = TaskManager()

# Load existing tasks (if any) from a .json file
tm.load_recent_state('~/data_file_path')

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

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

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

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

# Print the current state
print(tm)

# Generate a report of today's tasks
tm.report('~/a_dir_to_save_to','report_file_name.txt')

# Clear the to-do list after completing tasks
tm.clear('todo')

# Save current tasks (if any) to a .json file
tm.save_current_state('~/data_file_path')

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 with customizable priorities
  • Remove tasks from the to-do list
  • Mark tasks as completed
  • View current to-do list and completed tasks with formatting
  • Generate customizable reports of tasks (by 'to-do', 'done', or 'all')
  • Clear specific lists or 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-1.1.2.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

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

ttask_manager-1.1.2-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ttask_manager-1.1.2.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for ttask_manager-1.1.2.tar.gz
Algorithm Hash digest
SHA256 e3d7bcbd67fc45fa57f94c7824f5c1d6be859dcc9f54c6dffc891fcce7ba62dd
MD5 97ccc8ee7b874dbb2c4bb15c71cbd5c8
BLAKE2b-256 619bc7e169d349c3559897656c99abfe2328be98412f07e20f7d2eef3e9b3aa2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ttask_manager-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for ttask_manager-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a7aa1dbaf40d8b15bfcc33ca4d1bc31d238e0ebd1d69e0bd8279f62907b26f02
MD5 500264501042ea70428cd977d313d6f0
BLAKE2b-256 d5a04942f8ebb24d929a06cf510bd56ad0d00a4ff273559dc0cdc0ad0ef9a638

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