8000 GitHub - jonathan-d-nguyen/gtd-ticktick-system: Data-driven GTD task analysis for TickTick exports. Normalizes messy CSV data, identifies high-impact activities using five-dimension assessment, provides strategic productivity insights. Transforms reactive task management into systematic optimization with automated filtering and export-ready datasets.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Data-driven GTD task analysis for TickTick exports. Normalizes messy CSV data, identifies high-impact activities using five-dimension assessment, provides strategic productivity insights. Transforms reactive task management into systematic optimization with automated filtering and export-ready datasets.

Notifications You must be signed in to change notification settings

jonathan-d-nguyen/gtd-ticktick-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


TickTick GTD Task Analysis Pipeline

A comprehensive data processing pipeline for analyzing TickTick CSV exports to identify high-impact tasks and assess productivity patterns using Getting Things Done (GTD) methodology. Normalizes non-standard TickTick CSV exports, categorizes tasks by impact dimensions, and provides actionable insights for task prioritization.
Explore the docs »

Report Bug

Table of Contents
  1. About The Project
  2. Quick Start
  3. Data Processing & Analysis
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

1. About The Project

This project provides a comprehensive data processing pipeline for analyzing TickTick CSV exports to identify high-impact tasks and assess productivity patterns using Getting Things Done (GTD) methodology. The system normalizes non-standard TickTick CSV exports, categorizes tasks across five impact dimensions, and provides actionable insights for strategic task prioritization.

Key Features:

  • CSV Normalization: Cleanses TickTick's non-standard CSV format with metadata headers and multiline fields
  • Task Matrix Analysis: Generates comprehensive task counts by list, status, and priority
  • High-Impact Assessment: Evaluates tasks across five GTD dimensions for strategic prioritization
  • Interactive Filtering: Context-based task filtering with menu-driven selection
  • Pattern Recognition: Identifies productivity patterns and optimization opportunities
  • Export Analytics: Provides insights for continuous improvement of task management

(back to top)

1.1. GTD System Context

This project implements data analysis components of the Getting Things Done (GTD) productivity methodology created by David Allen. GTD is a personal productivity system that emphasizes capturing all tasks and ideas in an external system, then organizing and prioritizing them for systematic execution.

Core GTD Principles Applied:

  • Capture: Process TickTick CSV exports containing all captured tasks
  • Clarify: Normalize and categorize tasks by context, effort, and time requirements
  • Organize: Structure tasks into Projects, Next Actions, and Someday/Maybe lists
  • Reflect: Analyze task patterns and productivity metrics through data visualization
  • Engage: Identify high-impact tasks for strategic focus using five-dimension assessment

High-Impact Prioritization Framework:

The system evaluates tasks across five critical dimensions:

  1. Financial Impact: Tasks affecting financial situation (immediate and long-term)
  2. Career Growth: Professional advancement, skills, networking, credentials
  3. Home Foundation: Basic home functioning, safety, essential repairs
  4. Family Support: Practical and emotional support for family members
  5. Mental Bandwidth: Stress reduction, decision elimination, cognitive load management

Tag System Implementation:

  • Context Tags: 1.@home, 1.@desktop, 1.@anywhere, 1.@errands
  • Effort Tags: 2.high-effort, 2.low-effort
  • Time Tags: 3.time-5m, 3.time-15m, 3.time-30m, 3.time-60m+
  • Impact Tags: 4.high-impact, 4.waiting, 4.next-action

This data analysis pipeline supports the systematic identification of high-leverage activities that create disproportionate positive outcomes across these five life dimensions.

(back to top)

1.2. Built With

  • Python
  • CSV
  • Pandas
  • TickTick
  • Git

(back to top)

2. Quick Start

Get up and running quickly with basic task analysis. For advanced features, see Data Processing & Analysis.

(back to top)

2.1. Prerequisites

  1. Python Requirements

    # Python 3.6+ required
    python3 --version
  2. TickTick Export

    • Export your TickTick data as CSV from TickTick web interface
    • Place CSV file in the project directory
  3. Optional: Virtual Environment

    # Create virtual environment (recommended)
    python3 -m venv env
    source env/bin/activate  # On Windows: env\Scripts\activate

(back to top)

2.2. Basic Setup

  1. Clone the repository

    git clone https://github.com/jonathan-d-nguyen/gtd-ticktick-system.git
    cd gtd-ticktick-system
  2. Add your TickTick CSV export

    # Copy your TickTick export to the project directory
    cp ~/Downloads/TickTick-backup-2025-06-22.csv .

(back to top)

2.3. Basic Usage

  1. Normalize CSV export

    # Normalize TickTick CSV format
    python3 csv-normalizer.py TickTick-backup-2025-06-22.csv

    Output example:

    Successfully normalized CSV file. Output saved to TickTick-backup-2025-06-22-normalized.csv
    
    Task Matrix by List Names:
    List Name                                     Uncompleted  Completed  Cancelled  Total
    ---------------------------------------------------------------------------
    Projects                                      23           45         2          70
    OneOff Tasks                                  15           32         1          48
    Waiting For                                   5            8          0          13
    
  2. Interactive task analysis

    # Display task matrix with interactive filtering
    python3 display_columns-interactive.py --menu
  3. Quick analysis (default filters)

    # Auto-analyze projects and oneoff tasks (uncompleted only)
    python3 display_columns-interactive.py

(back to top)

3. Data Processing & Analysis

(back to top)

3.1. CSV Normalization

The csv-normalizer.py script handles TickTick's non-standard CSV format:

TickTick CSV Issues Addressed:

  • Removes metadata header (lines 1-6)
  • Preserves multiline fields with proper quoting
  • Handles Unicode characters and special formatting
  • Creates standard CSV structure for data analysis

Usage:

# Basic normalization
python3 csv-normalizer.py input.csv

# The script automatically:
# 1. Removes first 6 metadata lines
# 2. Preserves column headers (line 7)
# 3. Properly quotes multiline content fields
# 4. Outputs: input-normalized.csv

Output Structure:

"Folder Name","List Name","Task Title","Start Date","Tags","Content","Priority","Due Date","Status"
"GTD","Projects","Review quarterly goals","","4.high-impact","Assess progress...","5","2025-06-30","0"

(back to top)

3.2. Task Matrix Analysis

Generate comprehensive task statistics across all lists:

Features:

  • Task counts by completion status (uncompleted, completed, cancelled)
  • List-based organization
  • Total task summaries
  • Status distribution analysis

Matrix Output Example:

Task Matrix by List Names:
List Name                                     Uncompleted  Completed  Cancelled  Total
---------------------------------------------------------------------------
Projects                                      23           45         2          70
OneOff Tasks                                  15           32         1          48
Waiting For                                   5            8          0          13
Someday/Maybe                                 8            2          3          13
Reference                                     0            12         0          12

(back to top)

3.3. High-Impact Identification

The system supports identification of high-leverage tasks using GTD methodology:

Five-Dimension Impact Assessment:

  1. Financial Impact (1-5 scale)

    • Immediate financial benefit
    • Long-term financial security
    • Passive income generation
    • Expense reduction
  2. Career Growth (1-5 scale)

    • Skill development
    • Network expansion
    • Credential acquisition
    • Professional advancement
  3. Home Foundation (1-5 scale)

    • Safety improvements
    • Essential repairs
    • Organization systems
    • Infrastructure upgrades
  4. Family Support (1-5 scale)

    • Practical assistance
    • Emotional support
    • Educational support
    • Health and wellness
  5. Mental Bandwidth (1-5 scale)

    • Stress reduction
    • Decision elimination
    • Process automation
    • Cognitive load reduction

Usage in Analysis:

Tasks tagged with 4.high-impact in TickTick are automatically highlighted in the analysis output for strategic focus during daily and weekly reviews.

(back to top)

3.4. Advanced Filtering

The display_columns-interactive.py script provides comprehensive filtering options:

Interactive Mode:

python3 display_columns-interactive.py --menu

Menu Features:

  • CSV file selection (most recent first)
  • Multi-list selection (Projects, OneOff Tasks, etc.)
  • Status filtering (uncompleted, completed, cancelled)
  • Combined criteria filtering

Default Mode (Automated):

python3 display_columns-interactive.py

Default Filters:

  • Lists: Folder contains 'projects' OR list contains 'oneoff'
  • Status: Uncompleted only
  • Auto-selects most recent CSV file

Output Columns:

Filtered Tasks:
Task Title                               Folder    List         Tags         Priority   Content
Review quarterly objectives              GTD       Projects     4.high-impact High      Assess progress against Q2 goals...
Update project documentation            Work      OneOff Tasks 2.low-effort  Medium     Document recent changes to...

(back to top)

3.5. Export Formats

Generated Files:

  1. Normalized CSV: input-normalized.csv

    • Standard CSV format
    • Ready for data analysis tools
    • Preserves all original data
  2. Task Matrix: Console output

    • Summary statistics by list
    • Status distribution
    • Total counts
  3. Filtered Tasks: Console output

    • Task details with key metadata
    • Priority indicators
    • Content previews (first 100 characters)

Integration with Analysis Tools:

The normalized CSV files can be imported into:

  • Excel/Google Sheets for pivot tables
  • Tableau/Power BI for advanced visualization
  • Pandas/R for statistical analysis
  • Database systems for complex queries

(back to top)

4. Roadmap

  • Enhanced Impact Analysis

    • Five-dimension scoring automation
    • Confidence assessment integration
    • Task recommendation engine
    • Priority optimization algorithms
  • Advanced Visualization

    • Task hierarchy tree (Parent/Child relationships)
    • Productivity trend analysis
    • Completion rate dashboards
    • Time-based pattern recognition
  • API Integration

    • Real-time TickTick API connectivity
    • Live task analysis dashboard
    • Automated data collection
    • Historical trend analysis
  • Export Enhancements

    • PDF report generation
    • Excel template integration
    • JSON export format
    • Database export options
  • Core Pipeline

    • CSV normalization with multiline field support
    • Task matrix generation by list and status
    • Interactive filtering system
    • Default filter automation for GTD workflows
    • Priority and tag analysis
    • Content preview and metadata display
  • GTD Integration

    • Context-based task categorization
    • High-impact task identification
    • Project vs. single-action distinction
    • Status-based filtering (uncompleted, completed, cancelled)

See the open issues for a full list of proposed features (and known issues).

(back to top)

5. Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Test with sample TickTick CSV data
  4. Update documentation as needed
  5. Commit your Changes (git commit -m 'Add some AmazingFeature')
  6. Push to the Branch (git push origin feature/AmazingFeature)
  7. Open a Pull Request

Testing Guidelines

  • Test with various TickTick CSV export formats
  • Verify Unicode and special character handling
  • Ensure multiline content preservation
  • Validate output CSV format compliance
  • Test interactive menu functionality

Data Privacy

When contributing:

  • Use anonymized or example data only
  • Do not include personal task content
  • Exclude real TickTick exports from commits
  • Use *-example.csv naming for sample files

(back to top)

5.1. Top contributors:

contrib.rocks image

(back to top)

6. License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

7. Contact

Jonathan Nguyen - jonathan@jdnguyen.tech

Project Link: https://github.com/jonathan-d-nguyen/gtd-ticktick-system

(back to top)

8. Acknowledgments

(back to top)

About

Data-driven GTD task analysis for TickTick exports. Normalizes messy CSV data, identifies high-impact activities using five-dimension assessment, provides strategic productivity insights. Transforms reactive task management into systematic optimization with automated filtering and export-ready datasets.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0