marcusrugger / dove Goto Github PK
View Code? Open in Web Editor NEWUser Definable Github Kanban board
License: MIT License
User Definable Github Kanban board
License: MIT License
Transition model
{
"id": 1234,
"action": "<list of actions>"
}
Swimlane model
{
"id": 1234,
"swimlane_left": 1234,
"swimlane_right": 1234,
"transition_from_left": 1234,
"transition_from_right": 1234,
"name": "Backlog"
}
Add necessary gems:
Dove will be a web based application to provide a Kanban like whiteboard for Github issues. The user logs in through their Github account. The user can then select which repos they would like to manage through Dove.
I wanted a way of manipulating Github issues on a Kanban board. I looked at a few various Github based Kanban boards, but unfortunately, to work they require the imposition of some scheme or another. Like, a specific set of labels or labels in a specific format, for example.
I don't want to define a set of labels to work with a Kanban board, I want the Kanban board to work with my scheme.
In the end, such impositions are unnecessary. A swimlane need only be a set of applied filters, definable by the user, along with the application of some set of actions, also definable by the user, when transitioning an issue from one swimlane to another.
A Kanban board is a set of user defined swimlanes connected together with user defined transitions. Each swimlane will contain a list of cards, where each card represents a Github issue that matches the user defined filter for that swimlane.
The user will be able to drag a card from one swimlane to another, which will execute all of the transitions between the two swimlanes.
Here is an example Kanban board. Swimlanes are defined by the following filters
Backlog | Ready | In progress | Completed |
---|---|---|---|
is:open is:issue milestone:backlog | is:open is:issue milestone:$milestone no:assignee | is:open is:issue milestone:$milestone assignee:* | is:closed is:issue milestone:$milestone |
Forward transitions
Transition | Action |
---|---|
new --> Backlog | Set milestone to backlog |
Backlog --> Ready | Set milestone to $milestone |
Ready --> In progress | Set assignee to $logged_in_user |
In progress --> Completed | Close issue |
Backward transitions
Transition | Action |
---|---|
Completed --> In progress | Open issue |
In progress --> Ready | Set assignee to none |
Ready --> Backlog | Set milestone to backlog |
None of these transitions must be performed through the Kanban board. For example, if an issue is closed by a commit that's been merged into the default Github branch, the issue will automatically show up in the 'Completed' lane. Or, if a developer assigns herself an issue through the Github interface, the issue will still automatically show up in its milestone's 'In process' lane.
At the top of each swimlane will be a '+' button, which will allow the user to create a new issue to place in that swimlane. The issue will be appropriately transitioned to the swimlane when the user creates the issue.
The user will be able to apply labels.
As a user, when I create a new repository on Githup, I would like a way of setting it up with my usual set of labels and milestones, so that I don't have to do it myself.
Deploy to Amazon's Elastic Beanstalk so I can compare it against Heroku.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.