README.md

  1<p align="center">
  2    <img width="64px" src="logo/git-bug--logo--alpha--flat--bg.svg">
  3</p>
  4<h1 align="center">git-bug</h1>
  5
  6<div align="center">
  7
  8Distributed bug tracker embedded in Git.
  9
 10[![Build Status](https://travis-ci.org/MichaelMure/git-bug.svg?branch=master)](https://travis-ci.org/MichaelMure/git-bug)
 11[![License: GPL v3](https://img.shields.io/badge/License-GPLv3+-blue.svg)](http://www.gnu.org/licenses/gpl-3.0)
 12[![GoDoc](https://godoc.org/github.com/MichaelMure/git-bug?status.svg)](https://godoc.org/github.com/MichaelMure/git-bug)
 13[![Go Report Card](https://goreportcard.com/badge/github.com/MichaelMure/git-bug)](https://goreportcard.com/report/github.com/MichaelMure/git-bug)
 14[![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/the-git-bug/Lobby)
 15
 16</div>
 17
 18Would it be nice to not have to rely on a web service somewhere to deal with bugs ?
 19
 20Would it be nice to be able to browse and edit bug reports offline?
 21
 22`git-bug` is a distributed bug tracker embedded in `git`. It uses git's internal storage so **no files are added in your project**.
 23
 24As you would do with commits and branches, you can push your bugs to the same git remote you are already using to collaborate with other people.
 25
 26:construction: This is for now a proof of concept. Expect dragons and unfinished business. :construction:
 27
 28## Install
 29
 30### Go get
 31```shell
 32go get github.com/MichaelMure/git-bug
 33```
 34
 35If it's not done already, add golang binary directory in your PATH:
 36
 37```bash
 38export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
 39```
 40### Pre-compiled binaries
 41
 421. Go to the [release page](https://github.com/MichaelMure/git-bug/releases/latest) and download the appropriate binary for your system.
 432. Copy the binary anywhere in your PATH
 443. Rename the binary to `git-bug` (or `git-bug.exe` on windows)
 45
 46That's all !
 47
 48### Linux packages
 49
 50* [Archlinux (AUR)](https://aur.archlinux.org/packages/?K=git-bug)
 51
 52## CLI usage
 53
 54Create a new bug:
 55
 56```
 57git bug new
 58```
 59
 60Your favorite editor will open to write a title and a message.
 61
 62You can push your new entry to a remote:
 63```
 64git bug push [<remote>]
 65```
 66
 67And pull for updates:
 68```
 69git bug pull [<remote>]
 70```
 71
 72List existing bugs:
 73```
 74git bug ls
 75```
 76
 77You can now use commands like `show`, `comment`, `open` or `close` to display and modify bugs. For more details about each command, you can run `git bug <command> --help` or read the [command's documentation](doc/md/git-bug.md).
 78
 79## Interactive terminal UI
 80
 81An interactive terminal UI is available using the command `git bug termui` to browse and edit bugs.
 82
 83<p align="center">
 84    <img src="https://cdn.rawgit.com/MichaelMure/git-bug/55ab9631/doc/termui_recording.svg">
 85</p>
 86
 87## Web UI (status: WIP)
 88
 89You can launch a rich Web UI with `git bug webui`.
 90
 91![Web UI screenshot 1](doc/webui1.png)
 92![Web UI screenshot 2](doc/webui2.png)
 93
 94This web UI is entirely packed inside the same go binary and serve static content through a localhost http server.
 95
 96The web UI interact with the backend through a GraphQL API. The schema is available [here](graphql/schema.graphql).
 97
 98## Internals
 99
100Interested by how it works ? Have a look at the [data model](doc/model.md).
101
102## Misc
103
104- [Bash completion](misc/bash_completion)
105- [Zsh completion](misc/zsh_completion)
106- [ManPages](doc/man)
107
108## Planned features
109
110- media embedding
111- import/export of github issue
112- extendable data model to support arbitrary bug tracker
113- inflatable raptor
114
115## Contribute
116
117PRs accepted. Drop by the [Gitter lobby](https://gitter.im/the-git-bug/Lobby) for a chat.
118
119## License
120
121GPLv3 or later © Michael Muré