{"id":23280311,"url":"https://github.com/tehgm/einherjibot","last_synced_at":"2025-08-21T13:31:18.971Z","repository":{"id":46747142,"uuid":"185033300","full_name":"TehGM/EinherjiBot","owner":"TehGM","description":"Personal administration bot for Discord","archived":false,"fork":false,"pushed_at":"2023-03-03T23:33:30.000Z","size":1413,"stargazers_count":5,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-05-01T16:43:38.669Z","etag":null,"topics":["bot","discord","discord-bot"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TehGM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"TehGM","patreon":"tehgmdev","custom":["https://www.buymeacoffee.com/TehGM"]}},"created_at":"2019-05-05T13:12:59.000Z","updated_at":"2022-12-12T14:29:08.000Z","dependencies_parsed_at":"2023-01-25T14:46:10.188Z","dependency_job_id":null,"html_url":"https://github.com/TehGM/EinherjiBot","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/TehGM%2FEinherjiBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TehGM%2FEinherjiBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TehGM%2FEinherjiBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TehGM%2FEinherjiBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TehGM","download_url":"https://codeload.github.com/TehGM/EinherjiBot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230515650,"owners_count":18238286,"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","discord-bot"],"created_at":"2024-12-19T23:31:59.170Z","updated_at":"2024-12-19T23:31:59.868Z","avatar_url":"https://github.com/TehGM.png","language":"C#","funding_links":["https://github.com/sponsors/TehGM","https://patreon.com/tehgmdev","https://www.buymeacoffee.com/TehGM"],"categories":[],"sub_categories":[],"readme":"# Einherji Bot\n[![GitHub top language](https://img.shields.io/github/languages/top/TehGM/EinherjiBot)](https://github.com/TehGM/EinherjiBot) [![GitHub](https://img.shields.io/github/license/TehGM/EinherjiBot)](LICENSE) [![GitHub Workflow Status](https://img.shields.io/github/workflow/status/TehGM/EinherjiBot/.NET%20Core%20Build)](https://github.com/TehGM/EinherjiBot/actions) [![GitHub issues](https://img.shields.io/github/issues/TehGM/EinherjiBot)](https://github.com/TehGM/EinherjiBot/issues)\n\nEinherji is my private Discord administration bot. It mainly contains features that are useful to me or my friends.  \nEinherji is built using .NET Core Hosting approach, making use of its Dependency Injection container, Logging abstractions and configuration loading.\n\nUses [Discord.Net](https://github.com/discord-net/Discord.Net) for connection and MongoDB (using [C# MongoDB Driver](https://docs.mongodb.com/drivers/csharp)) for storage.\nThe bot contains a custom Regex Commands System built on top of [Discord.Net](https://discord.foxbot.me/stable/guides/commands/intro.html)'s default command system. Its implementation can be found in [CommandsProcessing](https://github.com/TehGM/EinherjiBot/tree/master/EinherjiBot.Core/CommandsProcessing) directory.\n\nThe bot is split into 2 projects:\n- EinherjiBot.General - contains bot's main features.\n- EinherjiBot.Core - contains extensions and core abstractions.\n\n## Running locally\n\u003e Note: requires [.NET 5 SDK](https://dotnet.microsoft.com/download/dotnet/5.0) since version 2.3.0.\n\n1. Clone this repository to get all files.\n2. Set up MongoDB database with following collections: `Miscellaneous`, `StellarisMods`, `PatchbotGames`, `EliteCommunityGoals` and `UsersData`.\n3. Create `appsecrets.json` file. See [example file](appsecrets-example.json) for example structure.  \nThis file will hold secrets, so it should not be included in source control repository. `.gitignore` file included with this repo will ignore `appsecrets.json` and `appsecrets.*.json` files.\n4. Add bot token from Discord Developer Portal to secrets file.\n5. Add MongoDB connection string for your DB to secrets file.\n6. *(optional)* If using DataDog for logs, create a following section in `appsecrets.json`, replacying `\u003capi-key\u003e` with your DataDog application API key:  \n```json\n\"Serilog\": {\n  \"DataDog\": {\n    \"ApiKey\": \"\u003capi-key\u003e\"\n  }\n}\n```\n7. *(optional)* If you're registered with Inara API, create a following section in `appsecrets.json`, replacing all tags as needed. Note: not prividing these values will disable Elite Dangerous Community Goals checker feature.\n```json\n\"EliteCommunityGoals\": {\n  \"InaraAppInDevelopment\": true,\n  \"InaraAppName\": \"\u003capp-name\u003e\",\n  \"InaraApiKey\": \"\u003capi-key\u003e\"\n}\n```\n8. Update [appsettings.json](EinherjiBot.General/appsettings.json). At very least, all channel, user and role IDs will need changing to match values in your Discord guild.\n9. Build and run `EinherjiBot.General` project.\n\n## Development\nThis bot is under continuous (if sometimes slow) development. Breaking changes might be introduced at any time.\n\nIf you spot a bug or want to suggest a feature or improvement, feel free to open a new [Issue](https://github.com/TehGM/EinherjiBot/issues).\n\n## License\nCopyright (c) 2020 TehGM\n\nLicensed under [Apache License 2.0](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftehgm%2Feinherjibot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftehgm%2Feinherjibot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftehgm%2Feinherjibot/lists"}