A utility to convert Google Tasks JSON exports to Todoist CSV format.
Project description
google_tasks_to_todoist
A command-line utility to convert your Google Tasks JSON exports into a CSV format compatible with Todoist, making it easier to migrate your tasks.
If you're switching from Google Tasks to Todoist, you've likely discovered that there's no direct way to import your tasks. This tool bridges that gap by converting your Google Tasks data into a structured CSV file that Todoist can import, preserving your task lists, titles, and due dates.
Installation
This project uses uv for project and dependency management.
-
Clone the repository:
git clone https://github.com/your-username/google-tasks-to-todoist.git cd google-tasks-to-todoist
-
Install dependencies:
uv sync
How to Get Your Google Tasks Data
You can export your Google Tasks data as a JSON file from Google Takeout. Select only "Tasks" to get a Tasks.json file.
Usage
Run the converter from your terminal using uv run.
uv run google-tasks-to-todoist [INPUT_FILE] [OPTIONS]
[INPUT_FILE]: The path to yourTasks.jsonfile from Google Takeout.
The script will generate a separate CSV file for each of your task lists. These files will be saved in the same directory as your input file, ready for import into Todoist.
Options
--starred-priority PRIORITY: Set the priority for starred tasks. The default is2. (1: highest priority, 4: lowest priority)--non-starred-priority PRIORITY: Set the priority for non-starred tasks. The default is4. (1: highest priority, 4: lowest priority)--include-completed: Include completed tasks in the export. By default, they are not included.
Example
Let's say you have a Tasks.json file and you want to assign the highest priority to your starred tasks and a medium priority to others.
uv run google-tasks-to-todoist Tasks.json --starred-priority 1 --non-starred-priority 3
This command will:
- Read tasks from
Tasks.json. - Assign priority 1 (p1) to all starred tasks.
- Assign priority 3 (p3) to all non-starred tasks.
- Exclude completed tasks (since
--include-completedis not present). - Generate CSV files for each task list, which you can then import into Todoist.
Testing
To run the test suite, use the following command:
uv run pytest
Limitations on Recurring Tasks
Please note that Google's Takeout export for Tasks does not include information about recurring tasks. As a result, all tasks converted by this utility will be non-recurring.
Disclaimer
This tool is an independent project and is not affiliated with, endorsed by, or in any way officially connected with Google or Doist.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file google_tasks_to_todoist-0.1.0.tar.gz.
File metadata
- Download URL: google_tasks_to_todoist-0.1.0.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2429133b1fb77d71761560cc820b9936263703b2adeb5f1497a179fdbab04297
|
|
| MD5 |
f7c19818ecf619f6781aa65a9448a087
|
|
| BLAKE2b-256 |
e30db2775c5d18437e9f0437ccc7fce155ccc1e8ba27637fbe43bf51ecffd974
|
File details
Details for the file google_tasks_to_todoist-0.1.0-py3-none-any.whl.
File metadata
- Download URL: google_tasks_to_todoist-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27d1bf0a5926691c76e8e17f7ea2adfc16a96cb817f0314bf9958119a89b57c8
|
|
| MD5 |
992f359d409218dfee68f614dde84bf7
|
|
| BLAKE2b-256 |
07cf0a33dac12c30ec6a0f9134e666cf2940e1bfadf7636cff6bc9548eba9115
|