📤 Export Trello Board in CSV for FREE [and optionally] Import to YouTrack.
You can run the desired script at the scripts/ dir:
scripts/exporter.pyto export a Trello board in CSV.scripts/importer.py(not implemented yet; will raiseNotImplementedError).
- Copy
assets/users.csv.exampletoassets/users.csvand replace sample rows with your Trello-to-YouTrack user mapping (header:TrelloUsername,YouTrackUsername). - Source
settings.shfrom the repo root to load env vars and ensure theassets/directory exists. - Install deps with uv:
uv sync - Run exporter:
uv run python scripts/exporter.py
- The import is tested only on the cloud version of YouTrack.
- The Trello boards as well as all other subsequent platforms are arranged [loosely] to follow the Scrum framework. Although it is not a strict requirement for the current export/import process.
- Make sure you have the list of user emails.
- Read the official documentation.
- Create a fresh Project (with type Scrum)
- Attach project Workflows:
- [OPTIONAL] attach Due Date:
- de-activate
Require due dates for submitted issues
- de-activate
- [OPTIONAL] attach Due Date:
- [pre-import] Edit project Fields:
- set Type of
Story pointstofloat: to allow CSV values offloatto be merged (YouTrack does not acceptintegerwhen importing from CSV). - set Type of
AssigneetoMultiple values: again, to allow CSV values to be merged and not to create a duplicate field (YouTrack importsuseras multi-value field). - [OPTIONAL] define
Priorityvalues - [OPTIONAL] select the desired Default Value of
Priority - [OPTIONAL] set Default Value of
Priorityto the desired value - [OPTIONAL] set Default Value of
TypetoUser Story
- set Type of
- Import the CSV via
Integrations > Imports - [post-import] Edit project Fields:
- [OPTIONAL] set Type of
Story pointstointeger - [OPTIONAL] set Type of
AssigneetoSingle value
- [OPTIONAL] set Type of
- Intended input: the CSV produced by
scripts/exporter.py(assets/trello-board.csv), plus the user mapping fromassets/users.csv. - Intended behavior: create new YouTrack issues (or update existing ones by ID) populating Summary, Description, State, Sprint, Story Points, Assignee(s), Due Date, and preserving Created/Author where possible via YouTrack fields.
- Environment: uses
YOUTRACK_API_BASE_URLandYOUTRACK_PERM_TOKENloaded viasettings.sh. - Implementation is still missing in
scripts/importer.py; add field mapping and issue create/update logic when ready.