{"id":13632623,"url":"https://github.com/utterance/utterances-oauth","last_synced_at":"2025-04-07T07:31:34.170Z","repository":{"id":20428846,"uuid":"89202904","full_name":"utterance/utterances-oauth","owner":"utterance","description":":lock: OAuth flow for utterances, utterance-bot APIs","archived":false,"fork":false,"pushed_at":"2022-06-25T10:06:48.000Z","size":135,"stargazers_count":113,"open_issues_count":7,"forks_count":49,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-22T14:11:41.109Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://utteranc.es","language":"TypeScript","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/utterance.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":"2017-04-24T05:55:53.000Z","updated_at":"2024-12-20T11:46:40.000Z","dependencies_parsed_at":"2022-08-19T03:00:18.112Z","dependency_job_id":null,"html_url":"https://github.com/utterance/utterances-oauth","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterance%2Futterances-oauth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterance%2Futterances-oauth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterance%2Futterances-oauth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utterance%2Futterances-oauth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/utterance","download_url":"https://codeload.github.com/utterance/utterances-oauth/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247612069,"owners_count":20966656,"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-08-01T22:03:09.183Z","updated_at":"2025-04-07T07:31:33.903Z","avatar_url":"https://github.com/utterance.png","language":"TypeScript","readme":"# utterances-oauth\n\nThis repo contains the source for the [Cloudflare Worker](https://developers.cloudflare.com/workers/) that powers the GitHub OAuth flow and issue creation for Utterances.\n\n## install\n\n```\nyarn install\n```\n\n## configuration\n\nCreate a file named `.env` at the root. File should have the following values:\n\n- BOT_TOKEN: a personal access token that will be used when creating GitHub issues.\n- CLIENT_ID: The client id to be used in the [GitHub OAuth web application flow](https://developer.github.com/v3/oauth/#web-application-flow)\n- CLIENT_SECRET: The client secret for the OAuth web application flow\n- STATE_PASSWORD: 32 character password for encrypting state in request headers/cookies. Generate [here](https://lastpass.com/generatepassword.php).\n- ORIGINS: comma delimited list of permitted origins. For CORS.\n\nExample:\n\n```\nBOT_TOKEN=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\nCLIENT_ID=aaaaaaaaaaaaaaaaaaaa\nCLIENT_SECRET=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\nSTATE_PASSWORD=01234567890123456789012345678901\nORIGINS=https://utteranc.es,http://localhost:9000\n```\n\n## run locally\n\n```\nyarn run start\n```\n\n## build\n\n```\nyarn run build\n```\n\n## deploy\n\nFirst add the necessary CLOUDFLARE\\_\\* entries to your .env file. See [@cfworker/dev README](https://www.npmjs.com/package/@cfworker/dev) for more information.\n\nThen execute:\n\n```\nyarn run deploy\n```\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futterance%2Futterances-oauth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Futterance%2Futterances-oauth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futterance%2Futterances-oauth/lists"}