KanbanOnRails is a complete open source solution for creating Kanban boards and project management.
- Two-way integration with Github, Bitbucket and Gitlab. Your issues will be synced with these services via api. All external changes with issues will be also synced via webhooks.
- Automatically build changelog Your pull requests and related issues will be parsed, sent to specified emails and wrote to repository file automatically after receiving webhooks from Github, Bitbucket or Gitlab. Our CHANGELOG.md is built by this way, check it out!
- Inviting users to your boards You can invite users that have no Github, Bitbucket or Gitlab accounts to your board as managers for example, so they will not see your project code but they could see your board and issues.
- Real-time integration You and your team will see all changes in real time via websockets. We use great rails framework Action Cable for this.
- Multi-project boards You can create board with multiple projects(even from Gitlab or Github together)
- Multi-section boards You can divide your board to multiple sections. For example you can create section with all issues(by click to checkbox "Or include all?" while creating the section) and section with only important issues(by creating section with tag "Important" for example, all issues with tag "Important" will display there)
- Interactive boards You can drag and drop issues between columns, so its tags will change accordingly. You can also close issue just drop it out of a board.
- Multi-language Service is translated in more than 70 languages.
- Completely open source This servise is licensed under MIT License and you can fork this repository or do whatever you want with the code. You can also deploy this service to your own server.
The easiest way to install it locally is using Docker. All you need is:
- Install Docker Engine and Docker Compose to your OS.
- Clone project
git clone [email protected]:technoeleganceteam/kanban_on_rails.git
or if you haven't profile in Githubgit clone https://github.com/technoeleganceteam/kanban_on_rails.git
- Go to the project root, copy
config/settings.local.yml.example
and rename it toconfig/settings.local.yml
- Run
docker-compose run web rake db:create
- Run
docker-compose run web rake db:migrate
- Run
docker-compose up
Then open your browser and go to http://localhost:3000 or if your work with virtual box go to http://your-virtual-box-local-ip:3000. That's almost all. If you'd like to have integration with other services locally you need to specify your settings for these services in config/settings.local.yml
.
Currenlty this service deployed by Capistrano with Puppet provision. But you can choose different way to deploy, for example by Ansible with Docker.
If you'd like to integrate with your own Gitlab server, first you must deploy this service to your server too and then you must specify Settings.omniauth.gitlab.client_options of gitlab service. It contains 3 keys: site
(url of your gitlab service), authorize_url
(usually '/oauth/authorize') and token_url
(usually '/oauth/token'). After this you could sign in with your Gitlab service and use your own Gitlab service api to sync your projects. Your should alse set your Gitlab api endpoint url in Settings.gitlab_endpoint
.
After local installation you can run specs with command rake spec
. You can run all specs and lints with command rake kanban_on_rails:run_all_specs_and_lints
. If you install it with Docker you to write docker-compose run web
before, for example docker-compose run web rake kanban_on_rails:run_all_specs_and_lints
.
Fork this repository, create a branch with some feature or bug fix, ensure that all tests are passed by running command rake spec
push your branch and then create Pull Request for this repository.
We are looking for investors or partners. If you'd like to cooperate with us or invest to the project, please contact us at [email protected] or [email protected]
MIT License