This is a trello power-up that allows you to sync your cards into a specific board, called the admin board.
We use Trello extensively in our team to keep track of our progress in several projects and to prioritize our work in the following weeks. All of our boards follow the same list structure to make things easier (backlog, to-do, in progress, etc.).
At some point, it became annoying as a user to have to navigate through the boards to check what has to be done each week. 'Wouldn't it be awesome if we could centralize a set of cards in one single board?', we asked ourselves. From this question, the Trello Admin Board project was born.
- Synchronize the cards you want, so these are all centralized in an Admin Board.
- The synced cards reflect any changes done to the original:
- Comments will be added/updated/deleted.
- New lists are created in the Admin Board if needed when the original card is moved.
- The synced card disappears once the original is deleted.
The installation consists of 2 parts:
- Setting up a web server that listens to the Webhooks sent by Trello and acts as middleware between the power-up and the Trello API.
- Adding your Trello credentials as environment values.
- Installing the Trello power-up in the boards you want to sync.
- Last steps from the team page.
The first requisite to run the extension is to run it in a machine accessible through port 443 (HTTPS). We recommend importing this repository into a Glitch project, as it will take care of installing the dependencies and setting up the proxy to redirect the requests to the node.js server.
However, if you have a web server ready, you may use it to install the extension:
- First go to the file config/app.json and change the value of the field trello.urls.callback to match your server address.
- Then, install the Trello Admin Board by cloning this repository and installing the dependencies.
npm install
- And run your server using:
npm start
- You should see a message in your console saying that the server is up and running.
In order to authenticate against the Trello API, the server needs the Trello credentials of the team administrator; these can be found and generated here.
These values need to be stored as environment variables with TRELLO_KEY and TRELLO_SECRET as their respective keys in the machine where the server is running. The way of doing this depends on the operative system where you are running the solution.
Below you have a sample screenshot in a Windows environment.
The last step consists of telling Trello where to find the power-up and of installing it in the boards in which the extension is wanted:
- The team administrator needs to go the Power-Ups Administration and select the team where the power-up will be installed.
- Once in the Team page, click on Create New Power-Up.
- Fill in the required fields, which are Power-Up Name and the URL to the manifest.json. The latter is served by the web server in which the extension is running.
If you have done everything right, now you should be able to see the power-up listed under power-ups from the board menu. The first thing you have to do is enable it in every board where you'd like to use it.
Once the administrator has enabled the power-up in the boards where its needed, it is time for the users to give the power-up access to their credentials. This is done using the OAuth mechanism provided by the Trello API and it is triggered as shown below:
The last thing the user needs to do in order to start working with the extension is to select the board that will act as the Admin Board. This is done by clicking on the button that is found on the top right corner of the board (Make this my Admin Board).
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
Released under the MIT license.