{"id":20105106,"url":"https://github.com/swiftcordapp/discordkitbotdemo","last_synced_at":"2025-09-20T23:32:46.090Z","repository":{"id":103979018,"uuid":"569558732","full_name":"SwiftcordApp/DiscordKitBotDemo","owner":"SwiftcordApp","description":"A macOS CLI Swift app to demonstrate the usage of DiscordKit for creating Discord bots in Swift","archived":false,"fork":false,"pushed_at":"2023-02-26T08:44:07.000Z","size":40,"stargazers_count":3,"open_issues_count":0,"forks_count":5,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-11-13T17:51:19.042Z","etag":null,"topics":["bot","discord","discordkit","swift"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SwiftcordApp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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},"funding":{"github":"cryptoAlgorithm","patreon":"cryptoAlgo","open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2022-11-23T05:10:13.000Z","updated_at":"2024-10-23T23:06:45.000Z","dependencies_parsed_at":"2023-11-23T15:45:58.371Z","dependency_job_id":null,"html_url":"https://github.com/SwiftcordApp/DiscordKitBotDemo","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/SwiftcordApp%2FDiscordKitBotDemo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwiftcordApp%2FDiscordKitBotDemo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwiftcordApp%2FDiscordKitBotDemo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SwiftcordApp%2FDiscordKitBotDemo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SwiftcordApp","download_url":"https://codeload.github.com/SwiftcordApp/DiscordKitBotDemo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233694811,"owners_count":18715506,"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":["bot","discord","discordkit","swift"],"created_at":"2024-11-13T17:45:50.991Z","updated_at":"2025-09-20T23:32:45.769Z","avatar_url":"https://github.com/SwiftcordApp.png","language":"Swift","funding_links":["https://github.com/sponsors/cryptoAlgorithm","https://patreon.com/cryptoAlgo"],"categories":[],"sub_categories":[],"readme":"#  DiscordKit Bot Demo\n\nA macOS CLI Swift app to demonstrate the usage of DiscordKit\nto create Discord bots in Swift.\n\n\u003e **Warning**\n\u003e DiscordKit's bot support is still in its preliminary stages\n\u003e and under heavy development, so a stable API isn't available.\n\u003e Check out the PR in DiscordKit: SwiftcordApp/DiscordKit#18\n\u003e for the latest progress updates and code.\n\u003e\n\u003e If you'd like to be a valuable beta tester, you can add a \n\u003e dependancy on the `bot-support` branch of \n\u003e [DiscordKit](https://github.com/SwiftcordApp/DiscordKit) or\n\u003e fork this repository!\n\n## Getting Started\n\nTo build your very own Discord bot in Swift with DiscordKit,\nsimply...\n\n1. Fork this repository\n2. Clone the forked repository with Xcode\n3. (If necessary) Create a new application at Discord's\n   [Developer Portal](https://discord.com/developers/applications).\n   Add a bot to the application, and generate a token. Remember\n   to copy it to add it to your configuration file in the\n   following step, as you won't be able to see it again!\n\n   Also, enable the \"Message Content Intent\" to ensure the bot\n   can see the content of your messages. You can always disable\n   it later.\n4. Create a new \"Configuration Settings File\" in the Xcode\n   project and add the following line:\n   ```\n   TOKEN=\u003cyour bot token\u003e\n   ```\n5. Add your bot to a server, minimally enabling the \"Send\n   Messages\" permission. Copy the ID of the server and set the\n   `COMMAND_GUILD_ID` environment variable in the \"DiscordKitDemo\"\n   scheme to your server's ID. This allows creating slash\n   commands scoped to your guild, which update instantly\n   (compared to global commands which may take hours to update).\n6. Build and run the project. Congratulations! 🎉 You've just\n   brought your bot to life!\n\nFeel free to open an issue or leave a message in Swiftcord's\nDiscord server if you get stuck on any step. Have fun!\n\n## Status\n\nWhat's up with DiscordKit's bot support? Find out below!\n\n### What Works\n\n* [x] Bot gateway identification with intents support\n* [x] Correct user agent, properties and REST authentication\n* [x] Sending basic messages\n* [x] Event dispatching with `NotificationCenter` for message\n      create and ready events\n* [x] Application command registration with a `resultBuilder`\n      (currently limited to slash commands)\n* [x] Adding parameters to commands in the `resultBuilder`\n      (currently only supports type `STRING`)\n* [x] Handling interactions with a closure, allowing responses\n\n### What's Planned\n\n* [ ] Support more types of interaction responses\n* [ ] Wider support of command parameter types\n* [ ] Other types of application commands (i.e. `USER`/`MESSAGE`)\n* [ ] Utility methods for received messages/channels/etc.\n\n_...and much more (TBD)_\n\n## Contributing\n\nFeel free to join in the bot support discussion on Swiftcord's\nDiscord server! There, I post frequent updates as well as ask for\nadvice regarding the design of the bot API.\n\nForking the `bot-support` branch and contributing your code is\nanother great way to accelerate progress.\n\nFinally, my work has greatly benefited you, consider sponsoring me!\nYour donation allows me to spend more time improving such projects.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswiftcordapp%2Fdiscordkitbotdemo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswiftcordapp%2Fdiscordkitbotdemo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswiftcordapp%2Fdiscordkitbotdemo/lists"}