A kanban board made for Gitlab
- nodejs
~ 0.10.26
or docker>= 1.4.1
- Gitlab
> 7.1
Laboard uses a file storage for columns definition. This is the only thing it stores by itself. Everything else is managed with issues labels.
Adding an issue to a column will place a special label on it (column:*
). This is how it works. Of course, Laboard keeps
everything clean and removes useless labels when issues are moved. This will keep your issue tracker clean and provides you
a clear view on the board.
The installation proccess is quite simple. You will first have to install some tools:
$ npm install -g bower gulp
Then clone the source repository and run gulp
:
$ git clone https://gitlab.com/laboard/laboard.git
$ cd laboard
$ npm install
$ bower install
The Laboard configuration is minimal:
config/server.js
:gitlab_url
: The URL to your Gitlab instance (for examplehttp://gitlab.example.com
)port
: Port to which the HTTP server is boundcolumn_prefix
: Prefix for gitlab issue label to map columns, for example an issue in the column backlog will have the labelcolumn:backlog
theme_prefix
: Prefix for gitlab issue label, for example a red issue will have labeltheme:danger
board_prefix
: Prefix for gitlab issue label, for example a starred issue will have labelboard:starred
redis
: Configuration of the redis serverhost
: Hostname of the serverport
: Port to connect to
If you already have docker installed, starting laboard is a simple one-liner:
$ docker run --name=redis --detach redis
$ docker run --name=laboard --link=redis:redis --publish=8080:8080 laboard/laboard
Ok, it's a two-liner actually.
Laboard should now be reachable using the http://localhost:8080 URL. If you are running docker through
boot2docker you will have to replace localhost
with the URL of the VM. You can get it by running boot2docker ip
.
If you don't want to install docker on your machine, you will still have to have nodejs installed. And redis. Once everything is set up, run the following commands in the laboard's root directory:
$ npm install
$ bower install
$ node bin/server.js # OR gulp server
Do not forget to export NODE_ENV=production
before running the above commands if you are running laboard on a production machine.
If you want to hack into Laboard, first, follow the installation guide. Once you are done, you'll be able to start Laboard locally thanks to docker and fig.
Using the fig up
command you will get an environment with the following containers:
- a
data
container mapping the.
,data
anddocker
directories - a
redis
container - a
commander
container to manage redis (listenning on port8282
) - a
api
container serving the laboard API - a
static
container serving the frontend code - two
websocket
container serving laboard websocket - a
haproxy
container in front of laboard containers
Every gulp
related command should be launched on the host machine to avoid side-effects. This includes common tasks
like app
or watch
, and test tasks like karma
or test
.
Before running tests, be sure to define the NODE_ENV=test
.
Laboard is licensed under MIT license