{"id":15594369,"url":"https://github.com/orta/gh-commentify","last_synced_at":"2025-10-30T01:10:41.583Z","repository":{"id":66647031,"uuid":"97324676","full_name":"orta/gh-commentify","owner":"orta","description":"A repo you can use to work-around GH issue comment request limits","archived":false,"fork":false,"pushed_at":"2018-02-04T20:31:23.000Z","size":75,"stargazers_count":15,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-06T21:49:23.960Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/orta.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-15T15:28:40.000Z","updated_at":"2021-12-12T19:46:45.000Z","dependencies_parsed_at":"2023-02-22T17:16:06.523Z","dependency_job_id":null,"html_url":"https://github.com/orta/gh-commentify","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/orta/gh-commentify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orta%2Fgh-commentify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orta%2Fgh-commentify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orta%2Fgh-commentify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orta%2Fgh-commentify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/orta","download_url":"https://codeload.github.com/orta/gh-commentify/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orta%2Fgh-commentify/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264696170,"owners_count":23650933,"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","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":[],"created_at":"2024-10-03T00:39:04.357Z","updated_at":"2025-10-30T01:10:41.532Z","avatar_url":"https://github.com/orta.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gh-commentify\n\nA repo you can use to work-around GH issue comment request limits by hosting your own server that makes authenticated requests on your behalf. You can find out more [in this blog post](http://artsy.github.io/blog/2017/07/15/Comments-are-on/)\n\nIt provides:\n\n* The same comment route as GH's API `/repos/:owner/:repo/issues/:number/comments`\n* Is locked to one org by default.\n* Handles cross-domain requests\n* Paginates under-the-hood for you, so you make one request\n* Embeds comment Reactions into the request for you\n\nThe JSON looks like this:\n\n```json\n[\n   {\n    \"url\": \"https://api.github.com/repos/artsy/artsy.github.io/issues/comments/315774939\",\n    \"html_url\": \"https://github.com/artsy/artsy.github.io/issues/364#issuecomment-315774939\",\n    \"issue_url\": \"https://api.github.com/repos/artsy/artsy.github.io/issues/364\",\n    \"id\": 315774939,\n\n    \"user\": {\n      \"login\": \"grantjbutler\",\n      \"id\": 526054,\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/526054?v=4\",\n      \"gravatar_id\": \"\",\n      \"url\": \"https://api.github.com/users/grantjbutler\",\n      \"html_url\": \"https://github.com/grantjbutler\",\n      \"followers_url\": \"https://api.github.com/users/grantjbutler/followers\",\n      \"following_url\": \"https://api.github.com/users/grantjbutler/following{/other_user}\",\n      \"gists_url\": \"https://api.github.com/users/grantjbutler/gists{/gist_id}\",\n      \"starred_url\": \"https://api.github.com/users/grantjbutler/starred{/owner}{/repo}\",\n      \"subscriptions_url\": \"https://api.github.com/users/grantjbutler/subscriptions\",\n      \"organizations_url\": \"https://api.github.com/users/grantjbutler/orgs\",\n      \"repos_url\": \"https://api.github.com/users/grantjbutler/repos\",\n      \"events_url\": \"https://api.github.com/users/grantjbutler/events{/privacy}\",\n      \"received_events_url\": \"https://api.github.com/users/grantjbutler/received_events\",\n      \"type\": \"User\",\n      \"site_admin\": false\n    },\n    \"created_at\": \"2017-07-17T14:38:14Z\",\n    \"updated_at\": \"2017-07-17T14:38:14Z\",\n    \"author_association\": \"NONE\",\n    \"body\": \"This is an interesting system you've built to handle comments. Do you foresee any problems with using Github Issues for comments while also using Github Issues for issue tracking? Or do you think just having the label \\\"Comment Thread\\\" and using Github's filtering is sufficient for separating the two and keeping things organized?\\r\\n\\r\\nAdditionally, were there any surprises that came up when implementing this system? For example, needing to support some kind of content of a comment (maybe an attached file?) and styling it correctly that didn't cross your mind when first implementing this.\",\n\n    \"body_html\": \"\u003cp\u003eHaving comments on GH issues also made it really easy to hook up to a slack channel - so that I can use my normal stream-based flow of issue management. \u003cg-emoji class=\\\"g-emoji\\\" alias=\\\"tada\\\" fallback-src=\\\"https://assets-cdn.github.com/images/icons/emoji/unicode/1f389.png\\\" ios-version=\\\"6.0\\\"\u003e🎉\u003c/g-emoji\u003e\u003c/p\u003e\\n\u003cp\u003e\u003ca href=\\\"https://user-images.githubusercontent.com/49038/28278078-dd0e0040-6ae9-11e7-9ca7-a35d245a52c4.png\\\" target=\\\"_blank\\\"\u003e\u003cimg src=\\\"https://user-images.githubusercontent.com/49038/28278078-dd0e0040-6ae9-11e7-9ca7-a35d245a52c4.png\\\" alt=\\\"screen shot 2017-07-17 at 12 16 37\\\" style=\\\"max-width:100%;\\\"\u003e\u003c/a\u003e\u003c/p\u003e\",\n\n    \"reactions\": {\n      \"url\": \"https://api.github.com/repos/artsy/artsy.github.io/issues/comments/315774939/reactions\",\n      \"total_count\": 0,\n      \"+1\": 0,\n      \"-1\": 0,\n      \"laugh\": 0,\n      \"hooray\": 0,\n      \"confused\": 0,\n      \"heart\": 0\n    }\n  },\n  { ... }\n]\n```\n\n# Front-End\n\nThis is only a server, you're expected to write your own front-end. \n\nIf you're looking for an awesome all-in-one solution for using issues on static pages, check out https://utteranc.es\n\n# Setup\n\n1. Make a GitHub [personal access token](https://github.com/settings/tokens) for the server to use. It only needs `public_repo` if you have an public repo for comment. Otherwise, use `repo`.\n\n2. Click: [![Deploy](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy?template=https://github.com/orta/gh-commentify)\n\nAfter that, you are done, pretty simple.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forta%2Fgh-commentify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forta%2Fgh-commentify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forta%2Fgh-commentify/lists"}