# I want to code a kanban interface to categories .. lets put a spec together

**URL:** https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306
**Category:** Feature
**Created:** [Juin 11, 2017, 6:13 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306 "2017-06-11T06:13:42Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![vikaskedia](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vikaskedia/32/73333_2.png) [@vikaskedia](https://meta.discourse.org/u/vikaskedia)
#### Post date: [Juin 11, 2017, 6:13 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/1 "2017-06-11T06:13:42Z")

</div>

In my team we use kanban (aka swimlanes/trello) for planning programming work.

I want to stop using gitlab issues / trello boards and use discourse as one place to co-ordinate all this.  
(Why? I love the UX of discourse and everyone hates using multiple systems)

Here is my idea for coding a kanban interface:

1. Each sub category will be a separate column.
2. Topic in each category are cards in each column.

So for e.g. Under the features category I can create sub categories like

Incoming feature request.  
Being planned  
Being developed  
Being tested  
Released to production

In the kanban interface on one page i will be able to see all the features separated out in the above 5 columns.

Dragging and dropping the card between column will move them along the process.’

I have coded something similar in the past and programming it would be trivial.

The order of the cards in each column will be determined by the votes of that card.

Is this the right spec? Or is there a better way to do things?

---

<div class="post-metadata">

### Author: ![DeanMarkTaylor](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/deanmarktaylor/32/102462_2.png) [@DeanMarkTaylor](https://meta.discourse.org/u/DeanMarkTaylor)
#### Post date: [Juin 11, 2017, 1:47 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/2 "2017-06-11T13:47:28Z")

</div>

> [@vikaskedia](#):
>
> So for e.g. Under the features category I can create sub categories like

Tags and “tag groups” would likely be a better match for this 2nd level category list as you don’t need any further security definition at that level.

This would enable multiple boards without them having to be top level

---

<div class="post-metadata">

### Author: ![mpalmer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mpalmer/32/45740_2.png) [@mpalmer](https://meta.discourse.org/u/mpalmer)
#### Post date: [Juin 12, 2017, 12:58 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/3 "2017-06-12T00:58:49Z")

</div>

Definitely use tags for this. Subcategories is far, far too heavyweight, and topics moving around willy-nilly tends to be disconcerting to onlookers. I like the general idea, though, as a fellow “let’s put everything on a board” enthusiast.

---

<div class="post-metadata">

### Author: ![vikaskedia](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vikaskedia/32/73333_2.png) [@vikaskedia](https://meta.discourse.org/u/vikaskedia)
#### Post date: [Juin 12, 2017, 1:14 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/4 "2017-06-12T01:14:28Z")

</div>

> [@mpalmer](#):
>
> Definitely use tags for this

The problem with tags is that there can be more than 1 tag applied to the same topic.

There has to be a 1-to-1 relationship between the columns in the kanban and tags inside discourse.

How will I achieve this ?

---

<div class="post-metadata">

### Author: ![mpalmer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mpalmer/32/45740_2.png) [@mpalmer](https://meta.discourse.org/u/mpalmer)
#### Post date: [Juin 12, 2017, 1:20 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/5 "2017-06-12T01:20:00Z")

</div>

> [@vikaskedia](#):
>
> There has to be a 1-to-1 relationship between the columns in the kanban and tags inside discourse.
> 
> How will I achieve this ?

Use specific tags for status. `s:new`, `s:planned`, `s:dev`, `s:test`, `s:released`. You could get around having a new of those tags by putting any closed topic into “Released”, any anything open and with a special tag into “Incoming”. As a sanity check/safety valve, if someone manually adds another tag (say they “move” the topic by adding `s:test` without removing `s:dev`), either put it into a (dynamically-created) “WTF?!?” column, or just leave it in both columns and have someone fix it up by hand when they notice one topic in two places.

Don’t let the perfect be the enemy of the good, here. You’re after a quick visualisation, not a strongly-consistent transactional distributed data store.

---

<div class="post-metadata">

### Author: ![DeanMarkTaylor](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/deanmarktaylor/32/102462_2.png) [@DeanMarkTaylor](https://meta.discourse.org/u/DeanMarkTaylor)
#### Post date: [Juin 12, 2017, 2:21 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/6 "2017-06-12T14:21:09Z")

</div>

> [@vikaskedia](#):
>
> The problem with tags is that there can be more than 1 tag applied to the same topic.

> [@mpalmer](#):
>
> As a sanity check/safety valve, if someone manually adds another tag (say they “move” the topic by adding s:test without removing s:dev), either put it into a (dynamically-created) “WTF?!?” column, or just leave it in both columns and have someone fix it up by hand when they notice one topic in two places.

I’m not sure all this is needed, as already mentioned above you “can” use “Tag Groups” to restrict what tags can appear i.e. only one tag from the group `["new", "planned", "dev", "test", "released"]`.  
Visit `/tag_groups` after enabling the `tagging enabled` site setting (disabled as default) to configure these.

Also note that within a category you can then set the following per category “Tags that can only be used in this category”, “Tag groups that can only be used in this category”.

---

<div class="post-metadata">

### Author: ![mpalmer](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mpalmer/32/45740_2.png) [@mpalmer](https://meta.discourse.org/u/mpalmer)
#### Post date: [Juin 12, 2017, 9:07 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/7 "2017-06-12T21:07:04Z")

</div>

Well, I for one didn’t know that tag groups did that. So yes, this would be much better than needing safety valves.

---

<div class="post-metadata">

### Author: ![pafcioooo](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pafcioooo/32/78004_2.png) [@pafcioooo](https://meta.discourse.org/u/pafcioooo)
#### Post date: [Septembre 2, 2017, 1:07 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/8 "2017-09-02T13:07:22Z")

</div>

Is there any follow up work concerning this great idea?

---

<div class="post-metadata">

### Author: ![chris-remus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/chris-remus/32/133734_2.png) [@chris-remus](https://meta.discourse.org/u/chris-remus)
#### Post date: [Mai 23, 2019, 3:34 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/9 "2019-05-23T15:34:08Z")

</div>

I’m very interested and available to help revive this idea.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [Mai 23, 2019, 3:35 UTC](https://meta.discourse.org/t/i-want-to-code-a-kanban-interface-to-categories-lets-put-a-spec-together/64306/10 "2019-05-23T15:35:21Z")

</div>

This is done per

> [@Kanban Board](https://meta.discourse.org/t/kanban-board-theme-component/118164):
>
> discourse2Summary Kanban Board allows you to display and organise topics using a kanban board interface.eyeglassesPreview [Preview on Discourse Theme Creator](https://discourse.theme-creator.io/theme/Discourse/kanban-board)hammer_and_wrenchRepository Link [https://github.com/discourse/discourse-kanban-theme](https://github.com/discourse/discourse-kanban-theme)open_bookNew to Discourse Themes? [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/beginners-guide-to-using-discourse-themes/91966) Install this theme component discourse2 Hosted by us? Theme components are available to use on our Pro, Business, and Enterprise plans. S…
