{"id":26656458,"url":"https://github.com/foxbot/adidis","last_synced_at":"2026-06-30T08:31:09.058Z","repository":{"id":86754406,"uuid":"139868717","full_name":"foxbot/adidis","owner":"foxbot","description":"a distributed discord sharder","archived":false,"fork":false,"pushed_at":"2018-07-05T22:30:25.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-11-01T00:18:30.419Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/foxbot.png","metadata":{"files":{"readme":"README.md","changelog":null,"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-07-05T15:30:51.000Z","updated_at":"2020-09-19T22:59:14.000Z","dependencies_parsed_at":"2023-03-13T19:53:44.633Z","dependency_job_id":null,"html_url":"https://github.com/foxbot/adidis","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/foxbot/adidis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxbot%2Fadidis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxbot%2Fadidis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxbot%2Fadidis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxbot%2Fadidis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/foxbot","download_url":"https://codeload.github.com/foxbot/adidis/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxbot%2Fadidis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34959504,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-30T02:00:05.919Z","response_time":92,"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":[],"created_at":"2025-03-25T07:30:00.276Z","updated_at":"2026-06-30T08:31:09.053Z","avatar_url":"https://github.com/foxbot.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# adidis\n\n# what?\na distributed discord sharder.\n\nthis guy makes shards to connect to discord. distributes the messages across workers.\n\nthere's a [whitepaper](https://gist.github.com/DasWolke/c9d7dfe6a78445011162a12abd32091d)\nabout this design, it's pretty interesting and you should read it some time.\n\n# why?\n\n**scenario:** my discord bot has lots of big image commands. i use python because it has great\nimage manipulation libraries and a great discord library. but my bot uses so much memory and\nthe CPU is constantly pinned, so it runs really slow.\n\n**problem:** you are getting bottlenecked by your own code, but because your bot is coupled so\ntightly to discord, you can't really do anything about it. more shards = more complexity and more\npoints of failure.\n\n**answer:** use a super fast language to talk to discord. keep a couple of these guys answering\ndispatch events. drop the ones you don't care about, put the ones you do care about in a big\nqueue. cache the data you want in an in-memory database, get rid of the rest of it because it's\nfat and wastes memory. spawn a million python workers to answer discord events, bring them up and\ndown as you choose, have basically zero downtime.\n\n# who?\n\nthis design is owed to [zeyla](https://github.com/zeyla) and [wolke](https://github.com/daswolke)\nwho each have their own implementations of this system.\n\nthis one was written for fun, mostly.\n\n# where?\n\nno where, yet.\n\n# when?\n\nwhen someone asks.\n\n# wlicense\nLicensed under ISC. [LICENSE](LICENSE.md)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxbot%2Fadidis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoxbot%2Fadidis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxbot%2Fadidis/lists"}