{"id":20122835,"url":"https://github.com/freaky/annoirc","last_synced_at":"2025-10-03T17:09:34.754Z","repository":{"id":142942493,"uuid":"313511896","full_name":"Freaky/annoirc","owner":"Freaky","description":"A bot to annotate IRC with information about posted links","archived":false,"fork":false,"pushed_at":"2024-11-26T21:04:13.000Z","size":399,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-23T16:43:48.942Z","etag":null,"topics":["irc","irc-bot","rust","tokio"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/Freaky.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2020-11-17T04:59:09.000Z","updated_at":"2024-11-26T21:04:18.000Z","dependencies_parsed_at":"2024-11-13T19:41:31.855Z","dependency_job_id":"63449bb6-bd4d-46b1-9a62-ca0d9715184b","html_url":"https://github.com/Freaky/annoirc","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/Freaky%2Fannoirc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Freaky%2Fannoirc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Freaky%2Fannoirc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Freaky%2Fannoirc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Freaky","download_url":"https://codeload.github.com/Freaky/annoirc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252721090,"owners_count":21793750,"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":["irc","irc-bot","rust","tokio"],"created_at":"2024-11-13T19:41:24.432Z","updated_at":"2025-10-03T17:09:29.706Z","avatar_url":"https://github.com/Freaky.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# annoirc - annotate IRC\n\nA simple, efficient IRC bot for annotating Internet Relay Chat conversations.\n\n![Example image](demo.png)\n\n## Description\n\n`annobot` is an IRC bot meant to respond to unauthenticated users with information\nto help enhance the Chat Experience™.  This includes:\n\n* Title text and meta descriptions of websites.\n* Dedicated handling for OMDB, YouTube, WolframAlpha, and Wikipedia.\n* Pretty colours.\n* Other stuff at some point.\n\nIt's currently very young and should be deployed with care.\n\n## Key Features\n\n* Multi-network.\n* Efficient async Rust with request caching and deduplication.\n* Per-channel rate limits.\n* Graceful config reloads via `SIGHUP`.\n* Messy code.\n\n## Usage\n\nCreate a configuration file, using `example.toml` as a guide.\n\nBuild the bot (currently requires Rust nightly):\n\n```shell\n$ cargo install --git https://github.com/Freaky/annoirc.git\n```\n\nAnd run it passing the path to the configuration:\n\n```shell\n$ annoirc -c config.toml\n```\n\nChanges to your configuration can be applied by calling`kill -HUP` on the annoirc\nprocess.\n\nConfiguring it to act as a daemon is system-specific and left as an exercise.\n\n## Todo\n\n* General refactoring.\n* Better rate limits.\n* Gracefuler config reloads (any IRC changes currently involve a reconnection).\n* Fully templated responses with colour support.\n* Special handling for Github, Imgur, etc.\n* Functions such as weather, dictionary lookups, currency conversions, stocks, etc.\n\n## See Also\n\n* [url-bot-rs](https://github.com/nuxeh/url-bot-rs), another simple Rust URL handling bot.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreaky%2Fannoirc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffreaky%2Fannoirc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreaky%2Fannoirc/lists"}