{"id":22780293,"url":"https://github.com/glavin001/issuebot","last_synced_at":"2025-10-15T02:16:46.045Z","repository":{"id":28721448,"uuid":"32242536","full_name":"Glavin001/IssueBot","owner":"Glavin001","description":"Automate Issue replies and organization","archived":false,"fork":false,"pushed_at":"2017-05-14T17:59:25.000Z","size":84,"stargazers_count":13,"open_issues_count":11,"forks_count":5,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-15T14:53:24.917Z","etag":null,"topics":["bot","github-issues"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Glavin001.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-15T02:59:59.000Z","updated_at":"2023-10-10T02:56:21.000Z","dependencies_parsed_at":"2022-09-05T00:10:46.199Z","dependency_job_id":null,"html_url":"https://github.com/Glavin001/IssueBot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Glavin001/IssueBot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Glavin001%2FIssueBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Glavin001%2FIssueBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Glavin001%2FIssueBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Glavin001%2FIssueBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Glavin001","download_url":"https://codeload.github.com/Glavin001/IssueBot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Glavin001%2FIssueBot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279034562,"owners_count":26089520,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-15T02:00:07.814Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","github-issues"],"created_at":"2024-12-11T20:12:46.971Z","updated_at":"2025-10-15T02:16:46.026Z","avatar_url":"https://github.com/Glavin001.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IssueBot\n\n\u003e Your personal assistant for automatically organizing and replying to Issues.\n\n---\n\n## Why `IssueBot`?\n\n- Does this look familiar?   \n  \u003cimg width=\"356\" alt=\"issue-bot-issues-count-nodejs\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065496/a4efe15c-3281-11e6-9500-9e2d24bf29eb.png\"\u003e\n- Are you maintaining a project with many issues and finding it difficult to stay organized?\n- Seeing double, or more, because your users will submit duplicate issues without searching first?\n- Wish you had someone else to help manage your Issues with you?\n\nIf you find yourself saying **Yes**, then `IssueBot` is made for you!\n\nSkip to [**Step 5. Profit** section](#step-5-profit) below for some screenshots and a feature overview!\n\nSkip to [**Installation** section](#installation) below for instructions on how to run the service yourself!\n\n\n## Getting Started\n\n### Step 1. Login with GitHub\n\nStart off by logging into GitHub!\n\n\u003cimg width=\"1002\" alt=\"issue-manager-login\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065191/ca33f992-327e-11e6-8728-84cc72c9b4bc.png\"\u003e\n\n\n### Step 2. Sign in to your GitHub account\n\nIf you are not already signed into GitHub you will see the following form.\n\n\u003cimg width=\"513\" alt=\"issue-bot-github-sign-in\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065189/ca2dc1f8-327e-11e6-9c76-b3972f289d56.png\"\u003e\n\n### Step 3. Enter the URL of a GitHub Repository\n\nOnce you are authenticated with your GitHub account you will be able to sync a repository.\n\n\u003cimg width=\"1192\" alt=\"issue-bot-enter-repo\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065190/ca2e9e02-327e-11e6-8e4e-b6a1190ad331.png\"\u003e\n\nSimply enter the URL for a repository you wish to sync!\n\n\u003cimg width=\"1201\" alt=\"issue-bot-entered-repo\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065188/ca2182bc-327e-11e6-9334-c63898b26dc6.png\"\u003e\n\n### Step 4. Syncing \u0026 Training\n\nBe patience while the repository is syncing and training predictive machine learning models.\n\n\u003cimg width=\"1180\" alt=\"issue-bot-syncing\" src=\"https://cloud.githubusercontent.com/assets/1885333/16065233/48b85a06-327f-11e6-925d-4855ddbd7987.png\"\u003e\n\n### Step 5. Profit!\n\n![profit](http://pix-media.s3.amazonaws.com/blog/778/75135-Breaking-Bad-money-bed-Huell-5-pJrx.jpeg)\n\n#### Automatically Manage Issues\n\nUsing GitHub Webhooks, Issues will be processed automatically.\n\n| Automatically Label Issues | Find similar / duplicate issues |\n| --- | --- |\n| Example of Issue automatically labelled as `bug` | Example of Issue labelled as `question` and similar issue suggested |\n| ![issue-bot-issue-labelling](https://cloud.githubusercontent.com/assets/1885333/16065305/eaf29868-327f-11e6-9d1d-4a6cc82bc313.png) | ![issue-bot-issue-labelling-similarity](https://cloud.githubusercontent.com/assets/1885333/16065304/eae259c6-327f-11e6-869f-7af8970cb215.png) |\n\n\n#### Example Results\n\nWhen you are done syncing you will receive a report.\nHere are some examples.\n\n| | Labels | Duplicates |\n| --- | --- | --- |\n| **Description** | Predict Issue Labels | Find similar/duplicate issues |\n| Glavin001/atom-beautify | ![](https://cloud.githubusercontent.com/assets/1885333/16065074/9862bd5a-327d-11e6-84fa-7196df27f770.png) | ![](https://cloud.githubusercontent.com/assets/1885333/16065073/984c970a-327d-11e6-9c97-c3b501532d6a.png) |\n| Facebook/react | ![](https://cloud.githubusercontent.com/assets/1885333/16064907/ee3db7d6-327b-11e6-9912-1d5d809d1271.png) | ![](https://cloud.githubusercontent.com/assets/1885333/16064908/ee564ec2-327b-11e6-9f81-4134b379b3be.png) |\n| nodejs/node | ![screen shot 2016-06-14 at 7 00 07 pm](https://cloud.githubusercontent.com/assets/1885333/16061254/71d912da-3262-11e6-99e7-410c1faa8059.png) | ![issue-bot-duplicates-nodejs](https://cloud.githubusercontent.com/assets/1885333/16061130/de676ff6-3261-11e6-9d81-e0bc7353a17a.png) |\n\n\n## Installation\n\n**Note**: Installation process needs a little love.\nBelow are details for how I get it running on my machine.\n\n### Config\n\n[node-config](https://github.com/lorenwest/node-config) handles configuration.\nCreate a local configuration file, that will be ignored by Git:\n\n```bash\ncp config/default.js config/local.js\n```\n\n### GitHub App\n\nGo to https://github.com/settings/developers and `Register a new application`.\nReplace `github.client_id` (`CLIENT_ID`) and `github.client_secret` (`CLIENT_SECRET`) in `config/local.js`.\n\n**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`.\n\n\n### Database\n\n1. Install [PostgreSQL](https://www.postgresql.org)\n\n```bash\n# Create a database\ninitdb /usr/local/var/postgres9.5 -E utf8\n# Start Postgres with specific database directory\npostgres -D /usr/local/var/postgres9.5\n```\n\n2. Create database with `createdb issuemanager`\n3. Create database user with:\n\n  ```bash\n$ psql issuemanager\nissuemanager=# create user issuemanager password 'CHANGE_ME_PASSWORD';\n```\n\n4. Edit your configuration in `config/local.js` under key `db`.\n5. Test database with `node scripts/test-db.js`\n\n### Tunnels to Localhost\n\nInstall [ngrok](https://ngrok.com) and run the following:\n\n```bash\nngrok http -subdomain=issue-manager-web 8080\nngrok http -subdomain=issue-manager 8081\n```\n\nEdit `config/local.js` to have the following corresponding configuration:\n\n```\n\"server\": {\n  \"base_url\": \"http://issue-manager.ngrok.io\",\n  \"port\": 8081\n},\n\"app\": {\n  \"base_url\": \"http://issue-manager-web.ngrok.io\"\n},\n```\n\n### Python\n\nInstall [Python](https://www.python.org) and [pip](https://pip.pypa.io/en/stable/installing/) the run the following:\n\n```bash\npip install -r requirements.txt\n```\n\n### Node.js\n\nInstall dependencies with `npm install`.\n\nStart [Webpack](https://webpack.github.io) development server with `npm run start:webpack`.\n\nFinally, start the server with `npm run start:server`.\n\n**Note**: `npm start` is equivalent to running both `npm run start:webpack` and `npm run start:server` in parallel.\n\nGo to http://issue-manager-web.ngrok.io to view the web application!\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglavin001%2Fissuebot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fglavin001%2Fissuebot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fglavin001%2Fissuebot/lists"}