{"id":17723247,"url":"https://github.com/aaronpk/slack-irc-gateway","last_synced_at":"2025-09-01T09:33:11.256Z","repository":{"id":35709706,"uuid":"39987488","full_name":"aaronpk/Slack-IRC-Gateway","owner":"aaronpk","description":"Bridge Slack rooms to IRC channels","archived":false,"fork":false,"pushed_at":"2024-12-24T18:02:12.000Z","size":348,"stargazers_count":35,"open_issues_count":9,"forks_count":6,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-15T15:00:59.111Z","etag":null,"topics":["bridge","gateway","irc","slack"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aaronpk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","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,"zenodo":null}},"created_at":"2015-07-31T05:00:07.000Z","updated_at":"2025-04-02T23:12:13.000Z","dependencies_parsed_at":"2024-10-25T20:00:09.625Z","dependency_job_id":"53023330-8109-4ce2-b64e-f1005fa2db8d","html_url":"https://github.com/aaronpk/Slack-IRC-Gateway","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aaronpk/Slack-IRC-Gateway","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpk%2FSlack-IRC-Gateway","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpk%2FSlack-IRC-Gateway/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpk%2FSlack-IRC-Gateway/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpk%2FSlack-IRC-Gateway/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aaronpk","download_url":"https://codeload.github.com/aaronpk/Slack-IRC-Gateway/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aaronpk%2FSlack-IRC-Gateway/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273100151,"owners_count":25045697,"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-09-01T02:00:09.058Z","response_time":120,"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":["bridge","gateway","irc","slack"],"created_at":"2024-10-25T15:42:19.704Z","updated_at":"2025-09-01T09:33:11.216Z","avatar_url":"https://github.com/aaronpk.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Slack IRC Gateway\n=================\n\nYou can use this project to bridge a Slack room with an existing IRC channel.\n\nWhen Slack users type a message, this script will sign in to IRC for them, join the\nchannel, and then relays their messages to IRC on behalf of them.\n\n\nSetup\n-----\n\n* Choose a Slack channel and configure a new custom app for it\n* Enable Event Subscriptions on the app\n* Set the Request URL to the location of where you deployed this script. It should be something like http://example.com:8080/gateway/input\n  * Make sure you deploy the app before setting this URL, as Slack will ping it to test it when you enter the URL\n  * Watch the logs and copy the \"Event API Token\" into your config\n* Under \"Subscribe to events on behalf of users\", add the `message.channels` event\n* Under \"OAuth \u0026 Permissions\", add the following User Token Scopes\n  * `channels:history`\n  * `channels:read`\n  * `files:read`\n  * `files:write`\n  * `groups:read`\n  * `users:read`\n  * (Some of these may already be added when you configure `message.channels` in the previous step)\n* Copy the OAuth Access Token and add it to the config file in `slack.token`. This is used to do things like look up info about Slack users.\n* Create an incoming web hook (legacy, not within this app) to route messages back into slack, and set that as `slack.hook` in the config file.\n* Set the hostname and channel for the IRC server you're connecting to in the config file.\n\nNow run `node gateway.js` which listens on the configured HTTP port and will start connecting to IRC on behalf of your Slack users!\n\nMessages from IRC will also be sent back to the corresponding channel.\n\n\nText Replacements\n-----------------\n\nSlack supports rich text in messages such as including links. If you have any custom text replacements you'd like to do for messages sent from IRC to Slack, such as autolinking keywords, you can add a file `replacements.js` and define a function there to transform text sent from IRC to Slack. See `replacements.example.js` for an example.\n\n\nEmoji\n-----\n\nSlack uses emoji shortcodes in the API rather than emoji themselves. When new emoji or shortcodes are added, the `emoji_pretty.json` file will need to be updated. This gateway uses a copy of the file that is used by Slack, available at\n\nhttps://github.com/iamcal/emoji-data\n\nhttps://raw.githubusercontent.com/iamcal/emoji-data/master/emoji_pretty.json\n\n\nLicense\n-------\n\nSee LICENSE.txt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faaronpk%2Fslack-irc-gateway","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faaronpk%2Fslack-irc-gateway","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faaronpk%2Fslack-irc-gateway/lists"}