{"id":15683973,"url":"https://github.com/djdeveloperr/rpcord","last_synced_at":"2025-05-07T15:06:14.444Z","repository":{"id":50777777,"uuid":"332406086","full_name":"DjDeveloperr/RPCord","owner":"DjDeveloperr","description":"Module to interact with Discord IPC.","archived":false,"fork":false,"pushed_at":"2021-05-30T04:28:11.000Z","size":168,"stargazers_count":10,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T15:05:41.872Z","etag":null,"topics":["discord","ipc","rpc","typescript"],"latest_commit_sha":null,"homepage":"","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/DjDeveloperr.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":"2021-01-24T09:03:53.000Z","updated_at":"2025-02-11T20:30:50.000Z","dependencies_parsed_at":"2022-09-11T21:52:17.721Z","dependency_job_id":null,"html_url":"https://github.com/DjDeveloperr/RPCord","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/DjDeveloperr%2FRPCord","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DjDeveloperr%2FRPCord/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DjDeveloperr%2FRPCord/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DjDeveloperr%2FRPCord/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DjDeveloperr","download_url":"https://codeload.github.com/DjDeveloperr/RPCord/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252902614,"owners_count":21822261,"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":["discord","ipc","rpc","typescript"],"created_at":"2024-10-03T17:09:22.858Z","updated_at":"2025-05-07T15:06:14.415Z","avatar_url":"https://github.com/DjDeveloperr.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RPCord\r\n\r\n![[NPM](https://npmjs.org/package/rpcord)](https://img.shields.io/npm/v/rpcord)\r\n\r\nModule to interact with local Discord Client using IPC.\r\n\r\n## Features\r\n\r\n- All RPC Commands supported.\r\n- Simple interface.\r\n- Made with TypeScript.\r\n\r\n## Docs\r\n\r\nRead the docs [here](https://github.com/DjDeveloperr/RPCord/blob/gh-pages/modules.md).\r\n\r\n## Installation\r\n\r\nYou can install from [NPM](https://npmjs.org/package/rpcord).\r\n\r\n```\r\nnpm i rpcord\r\n```\r\n\r\n## Example\r\n\r\n```ts\r\nconst { RPClient, Presence } = require(\"rpcord\");\r\n\r\nconst rpc = new RPClient(\"803507787497865226\");\r\n\r\nrpc.on(\"ready\", () =\u003e {\r\n  console.log(\"Connected!\");\r\n});\r\n\r\nrpc.connect().then(() =\u003e {\r\n  rpc.setActivity(\r\n    new Presence()\r\n      .setLargeImage(\"discord\")\r\n      .setDetails(\"Nothing\")\r\n      .setState(\"Idling\")\r\n      .setStartTimestamp(Date.now())\r\n      .setPartyID(\"12345\")\r\n      .setPartySize(1, 2)\r\n      .addButton({\r\n        label: \"RPCord Repo\",\r\n        url: \"https://github.com/DjDeveloperr/RPCord\",\r\n      })\r\n      .addButton({\r\n        label: \"RPCord NPM\",\r\n        url: \"https://npmjs.org/package/rpcord\",\r\n      })\r\n  );\r\n});\r\n```\r\n\r\nOr an advanced one!\r\n\r\n```ts\r\nconst { RPClient } = require(\"rpcord\");\r\n\r\nconst rpc = new RPClient(\"client_id\", {\r\n  secret: \"client_secret\",\r\n  scopes: [\"rpc\", \"messages.read\"],\r\n});\r\n\r\nrpc.on(\"ready\", () =\u003e {\r\n  console.log(\"Connected!\");\r\n});\r\n\r\nrpc.on(\"messageCreate\", console.log);\r\n\r\nrpc.connect().then(() =\u003e {\r\n  rpc.authorize().then(() =\u003e {\r\n    rpc.subscribe(\"MESSAGE_CREATE\", { channel_id: \"channel_id\" });\r\n  });\r\n});\r\n```\r\n\r\n## Note\r\n\r\nFor now, OAuth only works if you have at least one Redirect URI set in Developer Portal.\r\n\r\n## Contributing\r\n\r\nYou're always welcome to contribute!\r\n\r\n## License\r\n\r\nCheck [LICENSE](LICENSE) for more info.\r\n\r\nCopyright 2021 @ DjDeveloperr\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjdeveloperr%2Frpcord","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjdeveloperr%2Frpcord","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjdeveloperr%2Frpcord/lists"}