Skip to main content

📋 Priority Manager

Priority Manager is a Command-Line Interface (CLI) tool for managing tasks with priorities, statuses, tags, and due dates. It's designed to help you organize and prioritize your tasks efficiently with ease of use and flexibility.


🚀 Features

  • Add Tasks: Create tasks with descriptions, priorities, due dates, tags, and statuses.
  • Edit Tasks: Modify existing tasks interactively.
  • List Tasks: Display tasks sorted by priority, with optional filtering by status or tags.
  • Search and Filter: Search tasks by keywords or filter them by status and tags.
  • Export Tasks: Export tasks to various formats, including CSV, JSON, and YAML.
  • Archive Tasks: Archive completed tasks to keep your workspace clean.
  • Sync with Microsoft To Do: Synchronize tasks with a dedicated list in Microsoft To Do.
  • Task Completion: Mark tasks as complete or reopen them if needed.
  • Configurable: Customize task directories and settings through a configuration file (config.yaml).

📦 Installation

You can install Priority Manager from PyPI:

pip install priority-manager

Or upgrade

pip install --upgrade priority-manager

Update pip if Necessary

pip install --upgrade pip

🛠️ Usage

After installation, you can use the priority-manager command. Here are some basic commands:

General Help

priority-manager --help

Add a Task

priority-manager add "Finish the report"

You'll be prompted to provide additional details such as priority, description, due date, tags, and status.

List Tasks

priority-manager ls

List all tasks sorted by priority.

Filter by Status

priority-manager ls --status "In Progress"

Edit a Task

priority-manager edit

You’ll be prompted to select a task and edit its details interactively.

Complete a Task

priority-manager complete

Mark a task as completed.

Archive Tasks

priority-manager archive

Move completed tasks to the archive directory.

Export Tasks

Export tasks to CSV, JSON, or YAML:

priority-manager export --format csv

Available formats: csv, json, yaml.

Sync with Microsoft To Do

Synchronize local tasks with your Microsoft To Do list. Set the MS_TODO_TOKEN environment variable with a valid Microsoft Graph token before running:

priority-manager sync

⚙️ Configuration

config.yaml

The tool uses a config.yaml file for customizable settings. The default config.yaml looks like this:

directories:
  tasks_dir: "tasks"
  archive_dir: "archive"
  test_tasks_dir: "tests/test_tasks"
  test_archive_dir: "tests/test_archive"

statuses:
  - "To Do"
  - "In Progress"
  - "Blocked"
  - "Complete"
  - "Archived"

export_files:
  csv: "tasks_export.csv"
  json: "tasks_export.json"
  yaml: "tasks_export.yaml"

defaults:
  description: "No description"
  due_date: "No due date"
  tags: ""
  status: "To Do"

🧪 Testing

Run tests using pytest:

TEST_MODE=true pytest

Ensure all dependencies are installed:

pip install pytest

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the Repository.
  2. Create a New Branch: git checkout -b feature-name.
  3. Make Changes and Commit: git commit -m "Add new feature".
  4. Push to the Branch: git push origin feature-name.
  5. Create a Pull Request.

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.


📝 Author

David Chincharashvili
Email: davidchincharashvili@gmail.com
GitHub: davidtbilisi


🌟 Acknowledgments

  • Built with Click for CLI functionality.
  • YAML parsing powered by PyYAML.

Metadata

Release files for priority-manager 0.1.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for priority-manager 0.1.26
File Size Uploaded
priority_manager-0.1.26.tar.gz 30.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for priority-manager 0.1.26
File Interpreter ABI Platform
priority_manager-0.1.26-py3-none-any.whl Python 3 none any Details

Total release size: 72.4 kB

Release files / priority_manager-0.1.26.tar.gz

Download URL priority_manager-0.1.26.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
af09bdd992377a6aa99fe06abdfdcd0ccf0796612b6f96f66b6125e9a1b9bd84
BLAKE2b-256 checksum
How to use checksums
096771fb6612a51eee501ae10669d7d018e3f02020de5f4b6ee7c50c76fe41f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release files / priority_manager-0.1.26-py3-none-any.whl

Download URL priority_manager-0.1.26-py3-none-any.whl
Size 42.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4452254e8ec9c59774923d52ffe28428dea8f6a98f1939c7470f1ee135d55c72
BLAKE2b-256 checksum
How to use checksums
5b3bdfb63e565d7cbef1430213596e0a7916289162703a2fe6665b93bb818e97
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release history Release notifications | RSS feed

This release

0.1.26 This release

2 release files

0.1.25

2 release files

0.1.24

2 release files

0.1.23

2 release files

0.1.22

2 release files

0.1.20

2 release files

0.1.19

2 release files

0.1.18

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page