# IssueBot
**Repository Path**: mirrors_Glavin001/IssueBot
## Basic Information
- **Project Name**: IssueBot
- **Description**: Automate Issue replies and organization
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-24
- **Last Updated**: 2026-07-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# IssueBot
> Your personal assistant for automatically organizing and replying to Issues.
---
## Why `IssueBot`?
- Does this look familiar?
- Are you maintaining a project with many issues and finding it difficult to stay organized?
- Seeing double, or more, because your users will submit duplicate issues without searching first?
- Wish you had someone else to help manage your Issues with you?
If you find yourself saying **Yes**, then `IssueBot` is made for you!
Skip to [**Step 5. Profit** section](#step-5-profit) below for some screenshots and a feature overview!
Skip to [**Installation** section](#installation) below for instructions on how to run the service yourself!
## Getting Started
### Step 1. Login with GitHub
Start off by logging into GitHub!
### Step 2. Sign in to your GitHub account
If you are not already signed into GitHub you will see the following form.
### Step 3. Enter the URL of a GitHub Repository
Once you are authenticated with your GitHub account you will be able to sync a repository.
Simply enter the URL for a repository you wish to sync!
### Step 4. Syncing & Training
Be patience while the repository is syncing and training predictive machine learning models.
### Step 5. Profit!

#### Automatically Manage Issues
Using GitHub Webhooks, Issues will be processed automatically.
| Automatically Label Issues | Find similar / duplicate issues |
| --- | --- |
| Example of Issue automatically labelled as `bug` | Example of Issue labelled as `question` and similar issue suggested |
|  |  |
#### Example Results
When you are done syncing you will receive a report.
Here are some examples.
| | Labels | Duplicates |
| --- | --- | --- |
| **Description** | Predict Issue Labels | Find similar/duplicate issues |
| Glavin001/atom-beautify |  |  |
| Facebook/react |  |  |
| nodejs/node |  |  |
## Installation
**Note**: Installation process needs a little love.
Below are details for how I get it running on my machine.
### Config
[node-config](https://github.com/lorenwest/node-config) handles configuration.
Create a local configuration file, that will be ignored by Git:
```bash
cp config/default.js config/local.js
```
### GitHub App
Go to https://github.com/settings/developers and `Register a new application`.
Replace `github.client_id` (`CLIENT_ID`) and `github.client_secret` (`CLIENT_SECRET`) in `config/local.js`.
**Optional**: If you want to run `node scripts/get-issues.js` you should create a `Personal access token` at https://github.com/settings/tokens and replace `github.token` (`TOKEN`) in `config/local.js`.
### Database
1. Install [PostgreSQL](https://www.postgresql.org)
```bash
# Create a database
initdb /usr/local/var/postgres9.5 -E utf8
# Start Postgres with specific database directory
postgres -D /usr/local/var/postgres9.5
```
2. Create database with `createdb issuemanager`
3. Create database user with:
```bash
$ psql issuemanager
issuemanager=# create user issuemanager password 'CHANGE_ME_PASSWORD';
```
4. Edit your configuration in `config/local.js` under key `db`.
5. Test database with `node scripts/test-db.js`
### Tunnels to Localhost
Install [ngrok](https://ngrok.com) and run the following:
```bash
ngrok http -subdomain=issue-manager-web 8080
ngrok http -subdomain=issue-manager 8081
```
Edit `config/local.js` to have the following corresponding configuration:
```
"server": {
"base_url": "http://issue-manager.ngrok.io",
"port": 8081
},
"app": {
"base_url": "http://issue-manager-web.ngrok.io"
},
```
### Python
Install [Python](https://www.python.org) and [pip](https://pip.pypa.io/en/stable/installing/) the run the following:
```bash
pip install -r requirements.txt
```
### Node.js
Install dependencies with `npm install`.
Start [Webpack](https://webpack.github.io) development server with `npm run start:webpack`.
Finally, start the server with `npm run start:server`.
**Note**: `npm start` is equivalent to running both `npm run start:webpack` and `npm run start:server` in parallel.
Go to http://issue-manager-web.ngrok.io to view the web application!