1# git-bug rich web UI
 2
 3## Prerequisites
 4[ReactJS](https://reactjs.org/) | [Material UI](https://material-ui.com/) | [GraphQL](https://graphql.org/) | [Apollo GraphQL](https://www.apollographql.com/docs/react/)
 5
 6## How to develop
 7
 8### Run GraphQL backend
 9
101. Download a git-bug stable binary or compile your own by running `make` in the **root** directory:
11
122. Run the git-bug binary inside your git repository. It will manage issues and start the API:
13   - `git-bug webui -p 3001`
14
15### Run ReactJS front-end
16
171. If you haven't already, clone the git-bug repository:
18
192. Enter the `webui` directory and install the needed libraries:
20   - `make install` or `npm install`
21
223. Generate the TS code from the GrapQL files and run the webui in development mode:
23   - `make start` or `npm start`
24   - If you get some lint errors, run the lint command below and start again:
25      - `make fix-lint` or `npm run lint -- --fix`
26      - `make start` or `npm start`
27
28The development version of the WebUI is configured to query the backend on the port 3001. You can now live edit the js code and use the normal backend.
29
30## Bundle the web UI
31
32Once the webUI is good enough for a new release:
331. run `make build` from webui folder
342. run `make pack-webui` from the *root directory* to bundle the compiled js into the go binary.
35   - You must have Go installed on Your machine to run this command.