{"id":13457019,"url":"https://github.com/zachbr/Dis4IRC","last_synced_at":"2025-03-24T12:30:36.226Z","repository":{"id":47135978,"uuid":"152363057","full_name":"zachbr/Dis4IRC","owner":"zachbr","description":"A modern Discord \u003c-\u003e IRC bridge","archived":false,"fork":false,"pushed_at":"2025-01-02T23:19:03.000Z","size":885,"stargazers_count":62,"open_issues_count":19,"forks_count":19,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-22T23:32:06.069Z","etag":null,"topics":["bridge","configurate","discord","irc","java-discord-api","jda","kittehircclientlib","kotlin"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","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/zachbr.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","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":"2018-10-10T04:28:54.000Z","updated_at":"2025-03-22T20:24:20.000Z","dependencies_parsed_at":"2023-02-10T06:01:13.662Z","dependency_job_id":"086d407e-48b5-4849-81ce-61df6b988279","html_url":"https://github.com/zachbr/Dis4IRC","commit_stats":{"total_commits":290,"total_committers":8,"mean_commits":36.25,"dds":0.07586206896551728,"last_synced_commit":"cadccb4174c188dae3d503eb457cec724ff84778"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachbr%2FDis4IRC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachbr%2FDis4IRC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachbr%2FDis4IRC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachbr%2FDis4IRC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zachbr","download_url":"https://codeload.github.com/zachbr/Dis4IRC/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245269679,"owners_count":20587825,"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":["bridge","configurate","discord","irc","java-discord-api","jda","kittehircclientlib","kotlin"],"created_at":"2024-07-31T08:01:31.920Z","updated_at":"2025-03-24T12:30:36.188Z","avatar_url":"https://github.com/zachbr.png","language":"Kotlin","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"readme":"Dis4IRC\n=======\nA modern Discord \u003c-\u003e IRC Bridge\n\nPublished under the [MIT License](https://github.com/zachbr/Dis4IRC/blob/master/LICENSE.md).\n\nFeatures\n--------\n* Markdown and Modern IRC Client Features\n* Paste support for long messages\n* Channel Join/Quit broadcasts\n* Discord webhook support\n* Non-prefixed messages for other IRC bots to handle\n* IRC anti-ping zero width character in usernames\n* User, channel, role, and emote mentions\n* Sticker and emote support (as images or animated viewer)\n* Reply bridging with context\n\nGetting Started\n---------------\nPlease see the [Getting Started page](https://github.com/zachbr/Dis4IRC/blob/master/docs/Getting-Started.md).\n\nDownloads\n---------\n* Release versions can be found on [GitHub releases](https://github.com/zachbr/Dis4IRC/releases).  \n* The latest build from source can be found as a GitHub actions artifact.\n  * Users authenticated with GitHub can access builds [here](https://github.com/zachbr/Dis4IRC/actions?query=event%3Apush+is%3Asuccess+branch%3Amaster).\n  * Unauthenticated users can access the [latest version here](https://nightly.link/zachbr/Dis4IRC/workflows/gradle/master/dis4irc-jar).\n\nExample Config\n--------------\n```hocon\n# Dis4IRC Configuration File\n\n# A list of bridges that Dis4IRC should start up\n# Each bridge can bridge multiple channels between a single IRC and Discord Server\nbridges {\n    # A bridge is a single bridged connection operating in its own space away from all the other bridges\n    # Most people will only need this one default bridge\n    default {\n        # Relay joins, quits, parts, and kicks\n        announce-joins-and-quits=false\n        # Relay extra verbose information you don't really need like topics and mode changes.\n        announce-extras=false\n        # Mappings are the channel \u003c-\u003e channel bridging configurations\n        channel-mappings {\n            \"712345611123456811\"=\"#bridgedChannel\"\n        }\n        # Your discord API key you registered your bot with\n        discord-api-key=\"NTjhWZj1MTq0L10gMDU0MSQ1.Zpj02g.4QiWlNw9W5xd150qXsC3e-oc156\"\n        # Match a channel id to a webhook URL to enable webhooks for that channel\n        discord-webhooks {\n            \"712345611123456811\"=\"https://discordapp.com/api/webhooks/712345611123456811/blahblahurl\"\n        }\n        # Discord-specific configuration options\n        discord-options {\n            # Descriptor text to show in the client. An empty string will show nothing. This may not update immediately.\n            activity-desc=IRC\n            # Activity type to report to Discord clients. Acceptable values are DEFAULT, LISTENING, STREAMING, WATCHING, COMPETING\n            activity-type=DEFAULT\n            # Additional URL field used by certain activity types. Restricted to certain URLs depending on the activity type.\n            activity-url=\"\"\n            # Online status indicator. Acceptable values are ONLINE, IDLE, DO_NOT_DISTURB, INVISIBLE\n            online-status=ONLINE\n        }\n        commands {\n            pinned {\n                enabled=\"true\"\n            }\n            stats {\n                enabled=\"true\"\n            }\n        }\n        # Configuration for connecting to the IRC server\n        irc {\n            anti-ping=true\n            nickname=TestBridge2\n            # Messages that match this regular expression will be passed to IRC without a user prefix\n            no-prefix-regex=\"^\\\\.[A-Za-z0-9]\"\n            # Sets the max context length to use for messages that are Discord replies. 0 to disable.\n            discord-reply-context-limit=90\n            # A list of __raw__ irc messages to send\n            init-commands-list=[\n                \"PRIVMSG NICKSERV info\",\n                \"PRIVMSG NICKSERV help\"\n            ]\n            port=\"6697\"\n            realname=BridgeBot\n            send-discord-embeds=true\n            server=\"irc.esper.net\"\n            # Controls whether bridged nicknames will use color\n            use-nickname-colors=true\n            use-ssl=true\n            username=BridgeBot\n        }\n        mutators {\n            paste-service {\n                max-message-length=450\n                max-new-lines=4\n                # Number of days before paste expires. Use 0 to never expire.\n                paste-expiration-in-days=7\n            }\n        }\n    }\n}\ndebug-logging=true\n\n```\n\nObligatory\n----------\n![xkcd #1782](https://imgs.xkcd.com/comics/team_chat.png)\n\nThe Name\n--------\nThe name is a typo of a typo of a bad idea of a misspoken phrase.\nLet's just not go there :p\n\nBuilt using\n-----------\n* [KittehIRCClientLib](https://github.com/KittehOrg/KittehIRCClientLib)\n* [JDA (Java Discord API)](https://github.com/DV8FromTheWorld/JDA)\n* [Configurate](https://github.com/SpongePowered/configurate)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzachbr%2FDis4IRC","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzachbr%2FDis4IRC","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzachbr%2FDis4IRC/lists"}