Build Gem Version

Trellodon

A Ruby tool to export a Trello board and convert it into a set of folders and markdown files, corresponding to lists and cards on the board. For each card, you’ll get the basic details such as:

  • Name
  • Description
  • Labels
  • Comments
  • Checklists
  • Attachments

Sponsored by Evil Martians

Installation

gem install trellodon

Prerequisites

Trellodon needs two secret codes to download your boards:

  • Trello API key
  • Authentication token

To generate them, go to the trello.com/app-key page and follow the instructions.

Usage

Copy the board URL and run the following command:

trellodon dump --board=<url>

Other supported options:

Usage: trellodon dump [options]
Options:
        --board VALUE                Board URL or ID
        --out VALUE                  Destination folder path
        --concurrency VALUE          Amount of processing threads (default: 4). Set to 0 to execute API requests in-line
        --clear-auth                 Remove saved api credentials
    -v, --verbose                    Print all processes output
    -V, --version                    Print current version
    -h, --help                       Print help

Detailed example

Suppose we have a Trello board called projects with lists Brainstorm, TODO, DOING, DONE. Lists contains own cards.
All Trello boards have its own id this id requires Trellodon to fetch board via Trello API. You can find this id in two ways:

  • In URL https://trello.com/b/{id}/projects your Trello board id will be placed as {id} in example;
  • Put .json in your board URL like this https://trello.com/b/{id}/projects.json id field in json output is what you need;

You can also paste whole board URL and Trellodon will parse it correctly.
After launch Trellodon creates follow output in specified folder:

projects/
  Brainstorm/
    first_card_title/
       README.md
       attachments/
         image.png
  TODO/
    first_card_title/
       README.md
       attachments/
         report.docx
  ...

Each card has follow output format:

---
title: card_title
last_updated_at: 2022-03-16 16:28:39 UTC
labels: Test
---

# card_title

## Description
Some card description

## Comments
** John Doe @doe at 2022-03-16 16:28:39 UTC**

## Attachments
### Image.png
**date**: 2022-03-16
**url**: https://trello.com/1/cards/#{card_id}/attachments/#{attachment.id}/download/image.png

Trello API Limits 🚧

Trello API limits the total amount of requests for each API Key & token. By default, 300 requests are available per 10 seconds for each API key and no more than 100 requests per 10 second interval for each token. If a request exceeds the limit, Trello will return a 429 error. Additional information see here.