Skip to main content

A priority plotting application with PyQt6

Project description

🎯 PriPlot - Interactive Task Priority Visualization

PriPlot Screenshot

PyPI version Python License Downloads

Transform your task management with interactive priority plotting

FeaturesInstallationQuick StartUsageContributing


🌟 Overview

PriPlot is a modern, intuitive desktop application that revolutionizes how you prioritize tasks and goals. By visualizing tasks on an interactive Value vs. Time plot, you can instantly identify high-impact, low-effort opportunities and make data-driven decisions about where to focus your energy.

Why PriPlot?

  • 📊 Visual Priority Matrix: See all your tasks plotted by value and time investment
  • 🖱️ Interactive Drag & Drop: Easily adjust task priorities with your mouse
  • 🎨 Modern Dark UI: Beautiful, professional interface that's easy on the eyes
  • 📋 Bulk Import: Add multiple tasks from clipboard or use test data
  • 📈 Smart Sorting: Automatically calculates and ranks tasks by priority score
  • 📊 Export Ready: Export your prioritized tasks to Excel for sharing
  • Instant Feedback: Real-time priority calculations as you adjust values

✨ Features

🎯 Core Functionality

  • Interactive Priority Plotting: Drag tasks around the value/time matrix
  • Smart Priority Calculation: Automatic ranking based on value-to-time ratio
  • Multi-Tab Interface: Separate views for input, plotting, and results
  • Hover Tooltips: See task details without clicking

📊 Data Management

  • Flexible Input: Add tasks one by one or import from clipboard
  • Test Data Generator: Pre-loaded sample tasks for quick testing
  • Excel Export: Professional spreadsheet output with priority rankings
  • Real-time Updates: See priority changes instantly as you adjust positions

🎨 User Experience

  • Modern Dark Theme: Professional appearance with excellent contrast
  • Responsive Design: Smooth interactions and visual feedback
  • Intuitive Controls: No learning curve - just drag and prioritize
  • Cross-Platform: Works on Windows, macOS, and Linux

🚀 Installation

From PyPI (Recommended)

pip install priorityplot

From Source

git clone https://github.com/oyvinrog/priorityplot.git
cd priorityplot
pip install -e .

Requirements

  • Python: 3.8 or higher
  • Operating System: Windows, macOS, or Linux
  • Dependencies: Automatically installed with pip

⚡ Quick Start

  1. Install PriPlot:

    pip install priorityplot
    
  2. Launch the application:

    priorityplot
    
  3. Add your tasks in the "Input Goals" tab

  4. Visualize and prioritize in the "Plot" tab by dragging tasks

  5. Export your results from the "Table" tab

📖 Usage

Adding Tasks

Method 1: Manual Entry

  1. Open the "Input Goals" tab
  2. Type your task name
  3. Click "Add Goal"
  4. Repeat for all tasks

Method 2: Clipboard Import

  1. Copy a list of tasks (one per line) to your clipboard
  2. Click "Add Goals from Clipboard"
  3. All tasks will be imported automatically

Method 3: Test Data

  1. Click "Add Test Goals" to load sample tasks
  2. Perfect for exploring the application features

Interactive Prioritization

  1. Switch to the "Plot" tab after adding tasks
  2. Drag tasks around the plot:
    • Right side: Higher value tasks
    • Bottom: Lower time investment tasks
    • Bottom-right: High-value, low-time (highest priority!)
  3. Hover over points to see task details
  4. Watch the priority scores update in real-time

Exporting Results

  1. Click "Apply" to generate the priority table
  2. Switch to the "Table" tab to see ranked results
  3. Click "Export to Excel" to save your prioritized task list
  4. Share with your team or use for planning

🎨 Interface Guide

Value Axis (X-axis)

  • 1-2: Low value tasks
  • 3-4: Medium value tasks
  • 5-6: High value tasks

Time Axis (Y-axis)

  • 1-2 hours: Quick tasks
  • 3-4 hours: Medium effort
  • 5+ hours: Major time investment

Priority Quadrants

  • Top-Left: Low value, high time (avoid these!)
  • Top-Right: High value, high time (plan carefully)
  • Bottom-Left: Low value, low time (fill-in tasks)
  • Bottom-Right: High value, low time (do these first!)

🛠️ Development

Setting Up Development Environment

git clone https://github.com/oyvinrog/priplot.git
cd priorityplot
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e .

Running from Source

python -m priorityplot.main

🤝 Contributing

We welcome contributions! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Areas for Contribution

  • 🐛 Bug fixes and improvements
  • ✨ New features and enhancements
  • 📚 Documentation improvements
  • 🎨 UI/UX enhancements
  • 🧪 Test coverage expansion

📄 License

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

🙏 Acknowledgments

📞 Support


Made with ❤️ for better productivity

⭐ Star this repo if you find it helpful!

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

priorityplot-0.1.2.tar.gz (57.5 kB view details)

Uploaded Source

Built Distribution

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

priorityplot-0.1.2-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file priorityplot-0.1.2.tar.gz.

File metadata

  • Download URL: priorityplot-0.1.2.tar.gz
  • Upload date:
  • Size: 57.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for priorityplot-0.1.2.tar.gz
Algorithm Hash digest
SHA256 44ad811604c7b8ec35ddc23b86f5fe932db5deee8b004ff74d2b660415166402
MD5 d9d9bc0b9505e6412989659c2c078a4f
BLAKE2b-256 42289222205fd22716d82f2d4c79672b7d688d4c900d412b1fa7f7440627781d

See more details on using hashes here.

File details

Details for the file priorityplot-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: priorityplot-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for priorityplot-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 02cbe6e06744ef2ae1be3cd74081afc113e3f0b0657d39e17c194b26b1c57817
MD5 7b870bb1c44a695455918ae438fcc6e3
BLAKE2b-256 c136695abafc2ff29a16943fc0cf2090782f434f0c8988d7107a14496048c586

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