PHPackages                             alessandrominoccheri/trello-cycle-time - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. alessandrominoccheri/trello-cycle-time

ActiveProject[Utility &amp; Helpers](/categories/utility)

alessandrominoccheri/trello-cycle-time
======================================

A library to get cycle time of trello cards

v0.7.2(6y ago)03[5 issues](https://github.com/AlessandroMinoccheri/trello-cycle-time/issues)MITPHPPHP ^7.1.3

Since Jun 19Pushed 6y ago1 watchersCompare

[ Source](https://github.com/AlessandroMinoccheri/trello-cycle-time)[ Packagist](https://packagist.org/packages/alessandrominoccheri/trello-cycle-time)[ Docs](https://github.com/AlessandroMinoccheri/trello-cycle-time)[ RSS](/packages/alessandrominoccheri-trello-cycle-time/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (5)Versions (11)Used By (0)

Trello Cycle Time
=================

[](#trello-cycle-time)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/62391ebbf1450585ed4acc9c1ce1d75c51cbf11b8fb913edde3ca0b92393520b/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f416c657373616e64726f4d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/AlessandroMinoccheri/trello-cycle-time/?branch=master)[![Code Coverage](https://camo.githubusercontent.com/a26d28b4667e58edfb97cd3874e11b8926778295a984dd424161dfeac35818d0/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f416c657373616e64726f4d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/AlessandroMinoccheri/trello-cycle-time/?branch=master)[![Latest Stable Version](https://camo.githubusercontent.com/a3af3d1300f859fbc865703c9513f4d73f90d1f75479166823be5a9a1587c5c7/68747470733a2f2f706f7365722e707567782e6f72672f616c657373616e64726f6d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652f762f737461626c652e737667)](https://packagist.org/packages/alessandrominoccheri/trello-cycle-time)[![License](https://camo.githubusercontent.com/45956c073e79464754b24672adb8af93d80c446f73a0a97a42f62a6fcbf2801a/68747470733a2f2f706f7365722e707567782e6f72672f616c657373616e64726f6d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652f6c6963656e73652e737667)](https://packagist.org/packages/alessandrominoccheri/trello-cycle-time)[![Build Status](https://camo.githubusercontent.com/11a744633241e45fcff7e9a1f8286d1656ba102b430becb7af998283d8f3dd68/68747470733a2f2f6170692e7472617669732d63692e6f72672f416c657373616e64726f4d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652e706e67)](https://travis-ci.org/AlessandroMinoccheri/trello-cycle-time)[![Total Downloads](https://camo.githubusercontent.com/4f32efb95316c21269927cdb0c9f6be03a5e4878b9a82753138239d607abe43d/68747470733a2f2f706f7365722e707567782e6f72672f616c657373616e64726f6d696e6f6363686572692f7472656c6c6f2d6379636c652d74696d652f642f746f74616c2e706e67)](https://packagist.org/packages/alessandrominoccheri/trello-cycle-time)

This library is a PHP library to get cycle time of cards from a Trello board. With this tool you can seen how many times a card take to pass from a state to another state into the board.

Installation
------------

[](#installation)

You can install this package via composer like this:

```
composer require alessandrominoccheri/trello-cycle-time

```

How to use it?
--------------

[](#how-to-use-it)

To use this library you need to have:

- Trello apikey
- Trello token
- Trello boardId to analyze

### All Cards

[](#all-cards)

To get all cards transitions column you can use this code for example

```
use TrelloCycleTime\Client\TrelloApiClient;

$client = new TrelloApiClient('apikey', 'token');
$board = new TrelloBoard($client, 'board-id');

$transitions = $board->getTransitions();

var_dump($transitions);

```

The response of `getTransitions` is an array that contains some information for example:

```
[0 => [
   'id' => 'cardId',
   'title' => 'cardName',
   'cycleTimes' => [
        0 => [
            'from' => 'Doing',
            'to' => 'Done',
            'days' => '6',
            'name' => 'Doing_DOne'
        ],
        1 => [
             'from' => 'ToDo',
             'to' => 'Doing',
             'days' => '1',
             'name' => 'ToDo_Doing'
        ]
   ]
]
];

```

In this case you can see that this card takes 1 day to pass from Todo to Doing and 6 days to pass from Doing to Done.

### Specific card transition

[](#specific-card-transition)

To get only a specific card transition you can obtain it using its id like this:

```
use TrelloCycleTime\Client\TrelloApiClient;

$client = new TrelloApiClient('apikey', 'token');
$board = new TrelloBoard($client, 'board-id');

$transitions = $board->getCardTransitions('cardId');

var_dump($transitions);

```

The response of `getTransitions` is an array that contains some information only of that card for example:

```
[0 => [
   'id' => 'cardId',
   'title' => 'cardName',
   'cycleTimes' => [
        0 => [
            'from' => 'Doing',
            'to' => 'Done',
            'days' => '6',
            'name' => 'Doing_DOne'
        ],
        1 => [
             'from' => 'ToDo',
             'to' => 'Doing',
             'days' => '1',
             'name' => 'ToDo_Doing'
        ]
   ]
]
];

```

In this case you can see that this card takes 1 day to pass from Todo to Doing and 6 days to pass from Doing to Done.

### Filters

[](#filters)

You can filter column cards with some parameters. Here are some possible filters

#### From column to column

[](#from-column-to-column)

if you want to know only how much time alla cards or a single card passed from a column to column,

To do this you can use this code:

```
$transitions = $board->getTransitions(['fromColumn' => 'todo', 'toColumn' => 'done']);

```

or for a specific card:

```
$transitions = $board->getCardTransitions('cardId', ['fromColumn' => 'todo', 'toColumn' => 'done']);

```

#### From date to date

[](#from-date-to-date)

if you want to know only how much time alla cards or a single card passed filtered by from a date or to a date or together,

To do this you can use this code:

```
$transitions = $board->getTransitions(['fromDate' => '2019-01-01', 'toDate' => '2019-12-31']);
$transitions = $board->getTransitions(['fromDate' => '2019-01-01']);
$transitions = $board->getTransitions(['toDate' => '2019-12-31']);

```

or for a specific card:

```
$transitions = $board->getCardTransitions(['fromDate' => '2019-01-01', 'toDate' => '2019-12-31']);

```

Contributing
------------

[](#contributing)

Every contribution is welcome, remember to add tests and use psalm and phpstan:

```
./vendor/bin/phpunit
./vendor/bin/psalm
./vendor/bin/phpstan analyse

```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

10

Last Release

2478d ago

PHP version history (2 changes)v0.1.0PHP ^7.1.0

v0.5.0PHP ^7.1.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/0ea71f884c621ad504ca545b717e107f3c6e4854d9e38c2dbd5a96ff184d3c9c?d=identicon)[AlessandroMinoccheri](/maintainers/AlessandroMinoccheri)

---

Top Contributors

[![AlessandroMinoccheri](https://avatars.githubusercontent.com/u/3356506?v=4)](https://github.com/AlessandroMinoccheri "AlessandroMinoccheri (41 commits)")

---

Tags

phptimetrellocomponentcardcycle

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Psalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/alessandrominoccheri-trello-cycle-time/health.svg)

```
[![Health](https://phpackages.com/badges/alessandrominoccheri-trello-cycle-time/health.svg)](https://phpackages.com/packages/alessandrominoccheri-trello-cycle-time)
```

###  Alternatives

[phpoffice/common

PHPOffice Common

23512.3M36](/packages/phpoffice-common)[gehrisandro/tailwind-merge-laravel

TailwindMerge for Laravel merges multiple Tailwind CSS classes by automatically resolving conflicts between them

341682.2k18](/packages/gehrisandro-tailwind-merge-laravel)[dater/dater

Compact PHP library for working with date/time in different formats &amp; timezones.

14282.3k](/packages/dater-dater)[zjkal/time-helper

一个简单快捷的PHP日期时间助手类库。 a smart PHP datetime helper library.

21128.6k1](/packages/zjkal-time-helper)[maherelgamil/arabicdatetime

Easy and useful tool to generate arabic or hijri date with multi-language support for laravel

414.5k](/packages/maherelgamil-arabicdatetime)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
