From e93ea4c288e74ecc6ea571c6bc790a996a91a9ca Mon Sep 17 00:00:00 2001 From: developomp Date: Fri, 25 Feb 2022 12:53:35 +0000 Subject: [PATCH] Deploy website - based on 4c0523056e159223e879d675131a477075372e70 --- 404.html | 4 +-- assets/js/6ec7341c.91fa6f8e.js | 1 - assets/js/6ec7341c.ba6f504f.js | 1 + ...f2afb.50660014.js => 935f2afb.8e9f14b4.js} | 2 +- ...n.3cd2c3e4.js => runtime~main.3169a026.js} | 2 +- blog/archive.html | 4 +-- docs/bot/overview.html | 4 +-- docs/bot/setting-up.html | 4 +-- docs/docs/overview.html | 4 +-- docs/docs/setting-up.html | 4 +-- docs/overview.html | 4 +-- docs/usage/commands.html | 4 +-- docs/usage/overview.html | 18 ++++++++++--- docs/web-interface/api.html | 4 +-- docs/web-interface/overview.html | 4 +-- docs/web-interface/setting-up.html | 4 +-- index.html | 25 +++++++++++++------ secret.html | 4 +-- 18 files changed, 58 insertions(+), 39 deletions(-) delete mode 100644 assets/js/6ec7341c.91fa6f8e.js create mode 100644 assets/js/6ec7341c.ba6f504f.js rename assets/js/{935f2afb.50660014.js => 935f2afb.8e9f14b4.js} (77%) rename assets/js/{runtime~main.3cd2c3e4.js => runtime~main.3169a026.js} (95%) diff --git a/404.html b/404.html index 133224e..3de5c16 100644 --- a/404.html +++ b/404.html @@ -5,13 +5,13 @@ Page Not Found | Llama Bot Documentation - +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

- + \ No newline at end of file diff --git a/assets/js/6ec7341c.91fa6f8e.js b/assets/js/6ec7341c.91fa6f8e.js deleted file mode 100644 index b55ba33..0000000 --- a/assets/js/6ec7341c.91fa6f8e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkllama_bot_docs=self.webpackChunkllama_bot_docs||[]).push([[576],{3905:function(e,t,r){r.d(t,{Zo:function(){return m},kt:function(){return d}});var n=r(7294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var u=n.createContext({}),c=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},m=function(e){var t=c(e.components);return n.createElement(u.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},s=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,u=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),s=c(r),d=a,f=s["".concat(u,".").concat(d)]||s[d]||p[d]||o;return r?n.createElement(f,i(i({ref:t},m),{},{components:r})):n.createElement(f,i({ref:t},m))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=s;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l.mdxType="string"==typeof e?e:a,i[1]=l;for(var c=2;c"),": a required argument"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"command [arg2]"),": a required argument and a optional one"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"command [args]*"),": arbitrary amount of optional arguments"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"command [ ]"),": neither or both")))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6ec7341c.ba6f504f.js b/assets/js/6ec7341c.ba6f504f.js new file mode 100644 index 0000000..573cc8c --- /dev/null +++ b/assets/js/6ec7341c.ba6f504f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkllama_bot_docs=self.webpackChunkllama_bot_docs||[]).push([[576],{3905:function(e,t,n){n.d(t,{Zo:function(){return u},kt:function(){return h}});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var d=a.createContext({}),m=function(e){var t=a.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=m(e.components);return a.createElement(d.Provider,{value:t},e.children)},s={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,d=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),c=m(n),h=r,p=c["".concat(d,".").concat(h)]||c[h]||s[h]||o;return n?a.createElement(p,i(i({ref:t},u),{},{components:n})):a.createElement(p,i({ref:t},u))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=c;var l={};for(var d in t)hasOwnProperty.call(t,d)&&(l[d]=t[d]);l.originalType=e,l.mdxType="string"==typeof e?e:r,i[1]=l;for(var m=2;m"),", ",(0,o.kt)("inlineCode",{parentName:"p"},"."),", ",(0,o.kt)("inlineCode",{parentName:"p"},".."),", etc."),(0,o.kt)("p",null,"Although Discord released ",(0,o.kt)("a",{parentName:"p",href:"https://discord.com/blog/slash-commands-are-here"},"slash commands")," in 2021, it is not used by most bot developers."),(0,o.kt)("h3",{id:"commands-are-not-enough"},"Commands are not enough!"),(0,o.kt)("p",null,"Although commands are awesome, sometimes it is not enough to tell what exactly you want the bot to do.\nThis is why you need arguments."),(0,o.kt)("p",null,"Here's an example of a command with arguments:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"-ban @NaughtyUser @BadUser @GPUScalper69\n")),(0,o.kt)("p",null,"Arguments are extra text information that are passed with the command.\nArguments could be a user, a text channel, regular text, numbers, or even emojis.\nThey are usually separated by spaces.\nIf you provide more arguments than what's required, they will simply be ignored."),(0,o.kt)("h2",{id:"how-to-read-the-documentation"},"How to read the documentation"),(0,o.kt)("p",null,"WIP"),(0,o.kt)("h3",{id:"required-arguments"},"Required arguments"),(0,o.kt)("p",null,"WIP"),(0,o.kt)("h3",{id:"optional-arguments"},"Optional arguments"),(0,o.kt)("p",null,"WIP"),(0,o.kt)("h3",{id:"examples"},"Examples"),(0,o.kt)("h4",{id:"a-command-with-one-required-argument"},"A command with one required argument"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"-command \n")),(0,o.kt)("h4",{id:"a-command-with-a-required-argument-and-a-optional-one"},"A command with a required argument and a optional one"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"-command [arg2]\n")),(0,o.kt)("h4",{id:"a-command-with-arbitrary-amount-of-optional-arguments"},"A command with arbitrary amount of optional arguments"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"-command [args]*\n")),(0,o.kt)("h4",{id:"a-command-that-takes-neither-or-both-arguments"},"A command that takes neither or both arguments"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"-command [ ]\n")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.50660014.js b/assets/js/935f2afb.8e9f14b4.js similarity index 77% rename from assets/js/935f2afb.50660014.js rename to assets/js/935f2afb.8e9f14b4.js index 7af05b6..5a9dba8 100644 --- a/assets/js/935f2afb.50660014.js +++ b/assets/js/935f2afb.8e9f14b4.js @@ -1 +1 @@ -"use strict";(self.webpackChunkllama_bot_docs=self.webpackChunkllama_bot_docs||[]).push([[53],{1109:function(e){e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Overview","href":"/docs/overview","docId":"overview"},{"type":"category","label":"Usage","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/usage/overview","docId":"usage/overview"},{"type":"link","label":"Commands","href":"/docs/usage/commands","docId":"usage/commands"}]},{"type":"category","label":"Bot","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/bot/overview","docId":"bot/overview"},{"type":"link","label":"Setting up","href":"/docs/bot/setting-up","docId":"bot/setting-up"}]},{"type":"category","label":"Web Interface","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/web-interface/overview","docId":"web-interface/overview"},{"type":"link","label":"Setting up","href":"/docs/web-interface/setting-up","docId":"web-interface/setting-up"},{"type":"link","label":"API","href":"/docs/web-interface/api","docId":"web-interface/api"}]},{"type":"category","label":"Docs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/docs/overview","docId":"docs/overview"},{"type":"link","label":"Setting Up","href":"/docs/docs/setting-up","docId":"docs/setting-up"}]}]},"docs":{"bot/overview":{"id":"bot/overview","title":"Overview","description":"Why Llama Bot?","sidebar":"tutorialSidebar"},"bot/setting-up":{"id":"bot/setting-up","title":"Setting up","description":"This documentation uses the dev branch (javascript) instead of the master branch (python).","sidebar":"tutorialSidebar"},"docs/overview":{"id":"docs/overview","title":"Overview","description":"","sidebar":"tutorialSidebar"},"docs/setting-up":{"id":"docs/setting-up","title":"Setting Up","description":"Steps","sidebar":"tutorialSidebar"},"overview":{"id":"overview","title":"Overview","description":"The Llama Bot is under heavy development.","sidebar":"tutorialSidebar"},"usage/commands":{"id":"usage/commands","title":"Commands","description":"help","sidebar":"tutorialSidebar"},"usage/overview":{"id":"usage/overview","title":"Overview","description":"Work in progress...","sidebar":"tutorialSidebar"},"web-interface/api":{"id":"web-interface/api","title":"API","description":"HTTP endpoints.","sidebar":"tutorialSidebar"},"web-interface/overview":{"id":"web-interface/overview","title":"Overview","description":"A full stack web graphical user interface for the llama bot.","sidebar":"tutorialSidebar"},"web-interface/setting-up":{"id":"web-interface/setting-up","title":"Setting up","description":"This page will teach you how to set up the Llama bot web Interface.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkllama_bot_docs=self.webpackChunkllama_bot_docs||[]).push([[53],{1109:function(e){e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Overview","href":"/docs/overview","docId":"overview"},{"type":"category","label":"Usage","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/usage/overview","docId":"usage/overview"},{"type":"link","label":"Commands","href":"/docs/usage/commands","docId":"usage/commands"}]},{"type":"category","label":"Bot","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/bot/overview","docId":"bot/overview"},{"type":"link","label":"Setting up","href":"/docs/bot/setting-up","docId":"bot/setting-up"}]},{"type":"category","label":"Web Interface","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/web-interface/overview","docId":"web-interface/overview"},{"type":"link","label":"Setting up","href":"/docs/web-interface/setting-up","docId":"web-interface/setting-up"},{"type":"link","label":"API","href":"/docs/web-interface/api","docId":"web-interface/api"}]},{"type":"category","label":"Docs","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Overview","href":"/docs/docs/overview","docId":"docs/overview"},{"type":"link","label":"Setting Up","href":"/docs/docs/setting-up","docId":"docs/setting-up"}]}]},"docs":{"bot/overview":{"id":"bot/overview","title":"Overview","description":"Why Llama Bot?","sidebar":"tutorialSidebar"},"bot/setting-up":{"id":"bot/setting-up","title":"Setting up","description":"This documentation uses the dev branch (javascript) instead of the master branch (python).","sidebar":"tutorialSidebar"},"docs/overview":{"id":"docs/overview","title":"Overview","description":"","sidebar":"tutorialSidebar"},"docs/setting-up":{"id":"docs/setting-up","title":"Setting Up","description":"Steps","sidebar":"tutorialSidebar"},"overview":{"id":"overview","title":"Overview","description":"The Llama Bot is under heavy development.","sidebar":"tutorialSidebar"},"usage/commands":{"id":"usage/commands","title":"Commands","description":"help","sidebar":"tutorialSidebar"},"usage/overview":{"id":"usage/overview","title":"Overview","description":"If you are a non-technical discord user and want to learn how to use the Llama bot, you\'ve come to the right place.","sidebar":"tutorialSidebar"},"web-interface/api":{"id":"web-interface/api","title":"API","description":"HTTP endpoints.","sidebar":"tutorialSidebar"},"web-interface/overview":{"id":"web-interface/overview","title":"Overview","description":"A full stack web graphical user interface for the llama bot.","sidebar":"tutorialSidebar"},"web-interface/setting-up":{"id":"web-interface/setting-up","title":"Setting up","description":"This page will teach you how to set up the Llama bot web Interface.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.3cd2c3e4.js b/assets/js/runtime~main.3169a026.js similarity index 95% rename from assets/js/runtime~main.3cd2c3e4.js rename to assets/js/runtime~main.3169a026.js index 769b38f..e39387b 100644 --- a/assets/js/runtime~main.3cd2c3e4.js +++ b/assets/js/runtime~main.3169a026.js @@ -1 +1 @@ -!function(){"use strict";var e,t,n,r,o,c={},f={};function a(e){var t=f[e];if(void 0!==t)return t.exports;var n=f[e]={id:e,loaded:!1,exports:{}};return c[e].call(n.exports,n,n.exports,a),n.loaded=!0,n.exports}a.m=c,a.c=f,e=[],a.O=function(t,n,r,o){if(!n){var c=1/0;for(d=0;d=o)&&Object.keys(a.O).every((function(e){return a.O[e](n[u])}))?n.splice(u--,1):(f=!1,o0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[n,r,o]},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},a.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var o=Object.create(null);a.r(o);var c={};t=t||[null,n({}),n([]),n(n)];for(var f=2&r&&e;"object"==typeof f&&!~t.indexOf(f);f=n(f))Object.getOwnPropertyNames(f).forEach((function(t){c[t]=function(){return e[t]}}));return c.default=function(){return e},a.d(o,c),o},a.d=function(e,t){for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.f={},a.e=function(e){return Promise.all(Object.keys(a.f).reduce((function(t,n){return a.f[n](e,t),t}),[]))},a.u=function(e){return"assets/js/"+({53:"935f2afb",85:"1f391b9e",203:"cc530f52",237:"1df93b7f",384:"fb604431",477:"b2f554cd",485:"1185c21a",514:"1be78505",544:"611e23df",567:"1dec2e7b",576:"6ec7341c",586:"8ba27f22",608:"9e4087bc",685:"8c4d310d",774:"bb3131ce",903:"2daae186",918:"17896441",994:"d6526129"}[e]||e)+"."+{53:"50660014",75:"d0062eba",85:"cec1b863",203:"9eef22be",237:"6a1c5ee4",384:"f0a6c676",477:"69b650e4",485:"7836e536",514:"a222ddd6",544:"a5fe5bad",567:"d6b7d369",576:"91fa6f8e",586:"784ee771",608:"c1addae9",685:"0a0ad687",774:"a17d0b48",903:"1c4fd7f1",918:"2cd8a476",938:"22cb5172",994:"dffc6c2b"}[e]+".js"},a.miniCssF=function(e){return"assets/css/styles.c1c17b9a.css"},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r={},o="llama-bot-docs:",a.l=function(e,t,n,c){if(r[e])r[e].push(t);else{var f,u;if(void 0!==n)for(var i=document.getElementsByTagName("script"),d=0;d=o)&&Object.keys(a.O).every((function(e){return a.O[e](n[u])}))?n.splice(u--,1):(f=!1,o0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[n,r,o]},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},a.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var o=Object.create(null);a.r(o);var c={};t=t||[null,n({}),n([]),n(n)];for(var f=2&r&&e;"object"==typeof f&&!~t.indexOf(f);f=n(f))Object.getOwnPropertyNames(f).forEach((function(t){c[t]=function(){return e[t]}}));return c.default=function(){return e},a.d(o,c),o},a.d=function(e,t){for(var n in t)a.o(t,n)&&!a.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},a.f={},a.e=function(e){return Promise.all(Object.keys(a.f).reduce((function(t,n){return a.f[n](e,t),t}),[]))},a.u=function(e){return"assets/js/"+({53:"935f2afb",85:"1f391b9e",203:"cc530f52",237:"1df93b7f",384:"fb604431",477:"b2f554cd",485:"1185c21a",514:"1be78505",544:"611e23df",567:"1dec2e7b",576:"6ec7341c",586:"8ba27f22",608:"9e4087bc",685:"8c4d310d",774:"bb3131ce",903:"2daae186",918:"17896441",994:"d6526129"}[e]||e)+"."+{53:"8e9f14b4",75:"d0062eba",85:"cec1b863",203:"9eef22be",237:"6a1c5ee4",384:"f0a6c676",477:"69b650e4",485:"7836e536",514:"a222ddd6",544:"a5fe5bad",567:"d6b7d369",576:"ba6f504f",586:"784ee771",608:"c1addae9",685:"0a0ad687",774:"a17d0b48",903:"1c4fd7f1",918:"2cd8a476",938:"22cb5172",994:"dffc6c2b"}[e]+".js"},a.miniCssF=function(e){return"assets/css/styles.c1c17b9a.css"},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r={},o="llama-bot-docs:",a.l=function(e,t,n,c){if(r[e])r[e].push(t);else{var f,u;if(void 0!==n)for(var i=document.getElementsByTagName("script"),d=0;d Archive | Llama Bot Documentation - +

Archive

Archive

- + \ No newline at end of file diff --git a/docs/bot/overview.html b/docs/bot/overview.html index 9e2f937..e5a5532 100644 --- a/docs/bot/overview.html +++ b/docs/bot/overview.html @@ -5,14 +5,14 @@ Overview | Llama Bot Documentation - +

Overview

Why Llama Bot?​

102% Free​

Every features are available for free.

Everything is funded via donation.

Open source​

Llama bot is not just free as in free ice cream, but also free as in freedom. Every code that powers the Llama Bot can be found on Github. Developers have the first class support and we provide detailed documentations to help you host the Llama Bot yourself.

Also, every part of the bot is licensed under the MIT License so you are free to do whatever your hart desires!

- + \ No newline at end of file diff --git a/docs/bot/setting-up.html b/docs/bot/setting-up.html index 382706d..1379215 100644 --- a/docs/bot/setting-up.html +++ b/docs/bot/setting-up.html @@ -5,13 +5,13 @@ Setting up | Llama Bot Documentation - +

Setting up

info

This documentation uses the dev branch (javascript) instead of the master branch (python).

In this documentation, you will learn how to set up the llama discord bot.

Steps​

Pre-requirements​

  • Node.js 16.6.0+
  • yarn
  • A Discord account
  • A Google Firebase account
  • A sacrifice to be given to the llama gods (no longer needed)

Discord​

  1. Create a new application from the Discord Developer Portal. Select one if you already have it.
  2. Go to the Bot tab and convert your application to a discord bot. Be cautious since this operation is NOT REVERSIBLE.
  3. Copy the bot token. This will be used during the Server setup.

Firebase​

  1. Create a firebase project.

    https://console.firebase.google.com

  2. Enable firestore database (usage of production mode is highly recommended).

  3. Generate and download the service account key. This will be used during the Server setup.

Server​

info

Assumes UNIX-like environment (Linux, BSD, Mac, etc.)

  1. Clone the llama bot repository and open it.

    git clone https://github.com/llama-bot/llama-bot.git
    cd llama-bot
  2. Install dependencies.

    yarn install
  3. Create .env file in the project root and put the discord bot token generated during the Discord setup.

    .env
    TOKEN=PUT_YOUR_DISCORD_BOT_TOKEN_HERE
    TESTING=true # set it to false on production
    PREFIX_PROD=PUT_PRODUCTION_DEFAULT_PREFIX_HERE
    PREFIX_DEV=PUT_DEVELOPMENT_DEFAULT_PREFIX_HERE
    OWNER_IDS=ID1,ID2,ID3,...
  4. Create secret directory in the src directory, rename the firebase admin key generated during the Firebase setup to firebase-adminsdk.json, and put it in the secret directory.

  5. Build the bot.

    yarn build
  6. Install pm2 globally.

    yarn global add pm2
  7. Start the bot.

    pm2 start build/index.js --watch --name "Llama Bot"
    OptionExplanation
    --watchAuto restart bot if bot files have been changed
    --name "Llama Bot"Set the name of the process so it can be easily recognized
  8. Make the process automatically start on boot.

    pm2 startup

More info​

- + \ No newline at end of file diff --git a/docs/docs/overview.html b/docs/docs/overview.html index 804f220..762c596 100644 --- a/docs/docs/overview.html +++ b/docs/docs/overview.html @@ -5,13 +5,13 @@ Overview | Llama Bot Documentation - + - + \ No newline at end of file diff --git a/docs/docs/setting-up.html b/docs/docs/setting-up.html index f62f373..a62bebc 100644 --- a/docs/docs/setting-up.html +++ b/docs/docs/setting-up.html @@ -5,13 +5,13 @@ Setting Up | Llama Bot Documentation - +
- + \ No newline at end of file diff --git a/docs/overview.html b/docs/overview.html index 9819686..4292883 100644 --- a/docs/overview.html +++ b/docs/overview.html @@ -5,7 +5,7 @@ Overview | Llama Bot Documentation - + @@ -14,7 +14,7 @@ It can not even be called unstable. Most of the features are not written yet.

The Llama bot is a discord bot made for the LP community discord server.
It has a web GUI frontend for quick and easy usage, and it also has an HTTP API for more complex apps to be built on top of it.

FAQ​

Can I use this bot in my discord server?​

You can not invite this bot to your server, unfortunately.
However, since the source code is available on github, you can set up the bot yourself though it requires quite a bit of technical knowledge.

You need to be familiar with the following to be more specific:

If you think you are ready to setup the bot yourself, head over to the following pages:

Special thanks​

  • Dabidoo#9888 (265697563280146433) for making the colored logo
  • Sɪʟᴋ Sᴘɪᴅᴇʀ#8364 (419184817368858644) for making the white logo
- + \ No newline at end of file diff --git a/docs/usage/commands.html b/docs/usage/commands.html index 071739c..e2f4231 100644 --- a/docs/usage/commands.html +++ b/docs/usage/commands.html @@ -5,13 +5,13 @@ Commands | Llama Bot Documentation - +

Commands

help​

The most basic command and the a easy way to get information about a command/command category.

If no argument is passed, this command will list all command categories regardless of whether it is enabled or not.

example image of bot usage

help <category>​

help <command>​

ping​

- + \ No newline at end of file diff --git a/docs/usage/overview.html b/docs/usage/overview.html index 17a6abd..5945b07 100644 --- a/docs/usage/overview.html +++ b/docs/usage/overview.html @@ -4,14 +4,24 @@ -Overview | Llama Bot Documentation - +Overview | Llama Bot Documentation +
-

Overview

Work in progress...

Explain:

  • what bots are
  • what commands are
    • what prefixes are
      • ping prefix
      • default prefix
      • how different servers can have different prefixes

How to read documentation​

Arguments are extra information that are passed with the command. A command can have any number arguments and they could either be required or optional.

Searching​

Commands​

Required arguments​

Optional arguments​

Examples​

  • command <arg1>: a required argument
  • command <arg1> [arg2]: a required argument and a optional one
  • command [args]*: arbitrary amount of optional arguments
  • command [<arg1> <arg2>]: neither or both
- +

Overview

If you are a non-technical discord user and want to learn how to use the Llama bot, you've come to the right place. +In this page, you'll learn the basics of discord bots, what the Llama bot can do, and how to use it.

Background​

What even is a discord bot?​

In essence, a Discord bot is a account controlled by a program. +It is used in almost ever server for many different reasons such as automating moderation, music streaming, and even dad jokes.

Great! Now, how do I use a bot?​

Although some bots — including the Llama bot — offers a web interface, most bots are controlled by commands. +Commands are messages that is prefixed with special letter(s) that tells what a bot should do.

Here's an example of a command:

-help

Here, the hyphen (-) is the prefix and help is the command. +When messages are formatted like this, bots can identify whether a message is a command or not, and if the command is meant for them or some other bot. +This is helpful when there are multiple bots in one server. +Commonly used prefixes are: ?, !, >, ., .., etc.

Although Discord released slash commands in 2021, it is not used by most bot developers.

Commands are not enough!​

Although commands are awesome, sometimes it is not enough to tell what exactly you want the bot to do. +This is why you need arguments.

Here's an example of a command with arguments:

-ban @NaughtyUser @BadUser @GPUScalper69

Arguments are extra text information that are passed with the command. +Arguments could be a user, a text channel, regular text, numbers, or even emojis. +They are usually separated by spaces. +If you provide more arguments than what's required, they will simply be ignored.

How to read the documentation​

WIP

Required arguments​

WIP

Optional arguments​

WIP

Examples​

A command with one required argument​

-command <arg1>

A command with a required argument and a optional one​

-command <arg1> [arg2]

A command with arbitrary amount of optional arguments​

-command [args]*

A command that takes neither or both arguments​

-command [<arg1> <arg2>]
+ \ No newline at end of file diff --git a/docs/web-interface/api.html b/docs/web-interface/api.html index 415c95c..a52dd25 100644 --- a/docs/web-interface/api.html +++ b/docs/web-interface/api.html @@ -5,13 +5,13 @@ API | Llama Bot Documentation - +
- + \ No newline at end of file diff --git a/docs/web-interface/overview.html b/docs/web-interface/overview.html index 1b3cd29..8e1ddc0 100644 --- a/docs/web-interface/overview.html +++ b/docs/web-interface/overview.html @@ -5,13 +5,13 @@ Overview | Llama Bot Documentation - +
- + \ No newline at end of file diff --git a/docs/web-interface/setting-up.html b/docs/web-interface/setting-up.html index f9993fd..4b4f2d0 100644 --- a/docs/web-interface/setting-up.html +++ b/docs/web-interface/setting-up.html @@ -5,13 +5,13 @@ Setting up | Llama Bot Documentation - +

Setting up

This page will teach you how to set up the Llama bot web Interface.

Steps​

Pre-requirements​

  • Node.js version 14 or greater (version 16 is recommended)
  • yarn
  • Discord account
  • Google account
  • Payment method (No payment required for light usage. More info here)

Discord​

  1. Go to the Discord Developer Portal and create an application. Select one if you already have it. You may use the same application used by the discord bot.

  2. Go to OAuth2 tab.

  3. Add the following redirects:

    • testing (http): http://localhost:5000/api/auth
    • production (https): https://<YOUR_SITE_NAME_HERE>/api/auth (e.g. https://llama.developomp.com/api/auth)

Firebase​

  1. Create a firebase project. Select one if you already have it. It must be the same project used by the discord bot. Make sure it is using the blaze plan.
  2. Go to the Firestore Database tab and enable it. Usage of production mode is highly recommended.

Local​

Clone the llama-bot-web-interface repository.

Functions​

  1. Edit functions/src/config.json.

    functions/src/config.json (default values)
    {
    "pathPrefix": "/api", // where the API endpoints will be located. Set it to "/" if it's on another domain (example: api.example.com)
    "scopes": ["identify", "email", "guilds"] // Discord OAuth2 scopes.
    }

    more info about discord OAuth2 scopes can be found in the discord developers documentation

  2. Create functions/src/secret.json.

    functions/src/secret.json
    {
    "clientID": "DISCORD_CLIENT_ID_HERE", // Discord OAuth2 Client ID
    "clientSecret": "DISCORD_CLIENT_SECRET_HERE", // Discord OAuth2 Client Secret
    "secret": "SECRET_COOKIE_KEY_HERE" // secret key to be used for express session security
    }
  3. Visit this link, select your firebase project and download the firebase admin sdk key by pressing the "Generate new private key" button. Rename the downloaded file to firebase-adminsdk.json and put it in the functions/src/ directory.

  4. Install firebase tools.

    yarn global add firebase-tools
  5. Select your firebase project. You must run this command in the project root.

    firebase use <FIREBASE_PROJECT_ID_HERE>
  6. Go to the functions directory and install the dependencies.

    yarn install
  7. Build production code.

    yarn build

Frontend​

  1. Go to the frontend directory and install the dependencies.

    yarn install
  2. Test with hot reloading.

    yarn dev
  3. Build site for production.

    yarn build
  4. Preview the production build

    yarn preview

Testing​

After building the backend and the frontend code, run the following command to start a local test server:

firebase serve

Deployment​

Deploying the code to production is as simple as running the following command:

firebase deploy

The deployment could take a while so be patient.

Deploying frontend code only:

firebase deploy --only hosting

Deploying backend code only:

firebase deploy --only functions

More info​

- + \ No newline at end of file diff --git a/index.html b/index.html index 0fcb702..5aced33 100644 --- a/index.html +++ b/index.html @@ -1,8 +1,17 @@ - - - - - - - - + + + + + + + + + + + +
+
+ + + + \ No newline at end of file diff --git a/secret.html b/secret.html index 39990bc..97bc239 100644 --- a/secret.html +++ b/secret.html @@ -5,14 +5,14 @@ A hidden page | Llama Bot Documentation - +

Go back

How did you find me, why are you here?
No, this is not an easter egg.

- + \ No newline at end of file