{"id":14981859,"url":"https://github.com/scorixear/kellerus","last_synced_at":"2025-04-14T18:23:42.060Z","repository":{"id":47441673,"uuid":"243703200","full_name":"scorixear/kellerus","owner":"scorixear","description":"Another Discord Bot","archived":false,"fork":false,"pushed_at":"2022-07-28T19:13:45.000Z","size":687,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"develop","last_synced_at":"2025-03-28T06:51:12.520Z","etag":null,"topics":["babeljs","discord-bot","javascript","nodejs"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scorixear.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-28T07:25:55.000Z","updated_at":"2022-07-27T17:45:53.000Z","dependencies_parsed_at":"2022-08-28T20:21:45.379Z","dependency_job_id":null,"html_url":"https://github.com/scorixear/kellerus","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorixear%2Fkellerus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorixear%2Fkellerus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorixear%2Fkellerus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorixear%2Fkellerus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scorixear","download_url":"https://codeload.github.com/scorixear/kellerus/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248934164,"owners_count":21185612,"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":["babeljs","discord-bot","javascript","nodejs"],"created_at":"2024-09-24T14:04:24.027Z","updated_at":"2025-04-14T18:23:42.027Z","avatar_url":"https://github.com/scorixear.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kellerus\n\nAnother Discord Bot\n\n## Table of Contents\n\n- [kellerus](#kellerus)\n  - [Table of Contents](#table-of-contents)\n  - [Set up repository for collaboration (Windows)](#set-up-repository-for-collaboration-windows)\n    - [1. Download and Install Node.js](#1-download-and-install-nodejs)\n    - [2. Install Windows-Build-Tools](#2-install-windows-build-tools)\n    - [3. Download and Install Git](#3-download-and-install-git)\n    - [4. Download FFMPEG](#4-download-ffmpeg)\n    - [5. Install \u0026 Configure FFMPEG](#5-install--configure-ffmpeg)\n      - [Then add FFMPEG to your Path variable:](#then-add-ffmpeg-to-your-path-variable)\n      - [If Windows 10:](#if-windows-10)\n      - [If older versions of Windows:](#if-older-versions-of-windows)\n    - [6. Download and Install kellerus](#6-download-and-install-kellerus)\n    - [7. Install Dependencies](#7-install-dependencies)\n      - [Windows](#windows)\n      - [Linux](#linux)\n  - [Setting up kellerus](#setting-up-kellerus)\n    - [Changing the Mandatory Settings](#changing-the-mandatory-settings)\n      - [Discord API token](#discord-api-token)\n      - [Database Setup](#database-setup)\n    - [Changing the Youtube API Key](#changing-the-youtube-api-key)\n    - [Changing Optional Settings](#changing-optional-settings)\n    - [Setting up Puppeteer](#setting-up-puppeteer)\n\n## Set up repository for collaboration (Windows)\n\n### 1. Download and Install Node.js\n\nNode.js is what will be used to run the bot. [Download Node.js 6.x from the website](https://nodejs.org/en/).\nOpen the Node.js Setup. In the options, make sure `Node.js runtime`,`npm package manager` and `Add to PATH` are enabled. After that install Node.js.\n\n### 2. Install Windows-Build-Tools\n\nOpen up a windows powershell and run `npm i -g windows-build-tools`. This will take a while as it will download and install both python 2.7 and c++ build tools, so you can run node-gyp builds.\n\n### 3. Download and Install Git\n\nAnd install it. The website is http://git-scm.com and make sure you choose \"for command prompt\".\n\n### 4. Download FFMPEG\n\nDownload FFMPEG from [this website](https://ffmpeg.zeranoe.com/builds/). Make sure to find the current Static Build for your OS Architecture (32bit/64bit).\n\n### 5. Install \u0026 Configure FFMPEG\n\nExtract the files to the root of your harddrive, and rename the folder to ffmpeg.\n\n#### Then add FFMPEG to your Path variable:\n\n1. `windows key + x`\n2. go to system\n3. on the left Advanced system settings\n4. Environment Variables\n5. under System variables find the variable **Path** hit edit\n\n- Depending on your version of windows you may have a list of entries or a semicolon sperated field of entries.\n\n#### If Windows 10:\n\n1. Hit the new button on the right\n2. add `c:\\ffmpeg\\bin`\n\n#### If older versions of Windows:\n\n1. add `;c:\\ffmpeg\\bin` to the end of the field.\n\n### 6. Download and Install kellerus\n\nNext you'll need to download the bot and configure it. Download the `master` branch and put the unzipped files in a new folder on your computer. Next rename `config_template.json` to `config.json` and enter the correct information (more on that under [Setting up kellerus](#setting-up-kellerus)).\n\nFor obtaining a Discord Bot token, please see [this page](https://discordapp.com/developers/docs/intro).\n\nBefore running the bot you need to install the dependencies. In the folder you put the files in, Shift+Right click and select open command window here. In the command prompt type `npm install`.\n\nThe bot should now be ready! Open a command prompt like above and type `npm run start` to start the bot and see if it works.\n\n### 7. Install Dependencies\n\n#### Windows\n\nShift-RightClick in the folder that you downloaded and select Open command window here. Then type `npm install` and hit Enter.\n\n#### Linux\n\ncd to where you cloned the GitHub repo and type `npm install`. This will take a while.\n\n_Credits to [bdistin/OhGodMusicBot](https://github.com/bdistin/OhGodMusicBot/blob/master/README.md#download-ffmpeg)_\n\n--------------------------------------------\n\n## Setting up kellerus\n\nWhen deploying _Kellerus_, you need to initialize the `config.json` once! Copy the `config_template.json` from `/src/` to `/src/config.json`.\nIn this file, there are some mandatory and some optional settings. You need to change the mandatory settings, otherwise the Bot will **not** run.\n\n### Changing the Mandatory Settings\n\nThe mandatory settings are `token`, `dbhost`, `dbuser`, `dbpassword` and `dbport`.\n\n#### Discord API token\n\nYou can retrieve the token from your discord application (on https://discordapp.com/developers/applications). You need to create a separate application for this bot. Under _Bot_, click on the `Copy` button under _\"Click to Reveal Token\"_ and paste it in the `config.json`.\n\n#### Database Setup\n\nThe bot **needs** a db connection. This database must be `mysql` or `mariadb`. We do not support a db-less version of this bot.\nTo create a database for local testing, you can use the `docker_compose.yaml` for a docker setup or create your own database by hand.\nCopy the host, user, passwort and port into the `config.json`. We highly recommend to use a local database on the same instance as this bot will run.\n\nThis bot will **not** create its own database. The database must be created by you. The user the bot will use must have full access to this database, and this database only. The `dbDataBase` specifies the name of this created database.\n\n### Changing the Youtube API Key\n\nThe bot will contact the [Youtube Data API](https://developers.google.com/youtube/v3/getting-started) provided by Google. This lets the bot search for youtube videos by given search strings. The `YoutubeApiKey` must be set in order to provide this functionality. Otherwise the Bot will spit out errors if the `queue` commmand is used with search attributes.\n\n### Changing Optional Settings\n\nOptional Settings are the `discordUrl`, `botPrefix`, `playPrefix`, `language` and `commands`.\nThese settings can be left as they are, but give you some modifiability.\n\n- `discordUrl`, this is a preset for a possible invite link for this bot. You need to fill in the client_id. This will give the Bot every permission that it does and will need.\n- `botPrefix`, this represents the single character, that will indicate a command to the bot. The message must start with this character in order to be detected as a legitimate command.\n- `playPrefix`, the bot has the functionaltiy to save and play small soundfiles. These can be uploaded to the bot via the command `add` and played via `play`. Writing every time `play` is kind of tedious, this playPrefix provides a shortcut for the `play` command.\n- `language`, currently the bot is translated to german and english. You can add your own translations by copying the `/src/assets/language/en-EN.json` and renaming it to you language-code. This setting can be changed while running the bot via the command `lang`.\n- `commands`, this is a collection of settings, that limit the SoundFiles, that can be uploaded to the bots server. We suggest to leave them as they are, but you can fiddle with them a bit if you want.\n\n### Setting up Puppeteer\n\nKellerus uses Puppeteer to retrieve current numbers of the ongoing covid19 pandemic. These numbers are retrieved via puppeteer. Running this bot in Windows is not a problem, running it on Linux or Mac require some _mandatory_ addditional packages to be installed. See the [Puppeteer on Linux](https://github.com/puppeteer/puppeteer/blob/master/docs/troubleshooting.md#chrome-headless-doesnt-launch-on-unix) repository for a detailed explanation and the dependencies that must be installed.\nIf the bot is not working because if puppeteer, it will almost definitly be because of missing or changed dependencies.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscorixear%2Fkellerus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscorixear%2Fkellerus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscorixear%2Fkellerus/lists"}