Skip to content

❤️ Majo.exe - Discord Bot for Fun, Memes, Images, Giveaway, Economy, Anime, NSFW & More

License

Notifications You must be signed in to change notification settings

ddiabla/majobot

 
 

Repository files navigation

Majo.exe

Majo.exe have almost everything - Fun, Memes, Images, Giveaway, Economy, Anime and NSFW. This bot serve over 150 commands!

Discord.js v12 is deprecated! We are working on rebuild Majo to Discord.js v13, you can contribute or see progress by clicking link below!
See Majo.exe on Discord.js v13!

Discord

Node.js Jekyll GitHub License Version

Invite

Go to this link and add the bot (this requires MANAGE_GUILD permission) to your server.

Features

  • ⚙️ Fully customizable
  • 🌆 Build-in Dashboard
  • 📝 Easy Config
  • 💯 150+ Commands
  • 📚 Easy Hosting

Hosting

We host this bot. Majo.exe will be online 24/7. Invite Majo here! However, if you want to host Majo yourself - take a look here

Heroku Hosting

Deploy the app to Heroku

Deploy to heroku

Heroku hosting tutorial

Self-Hosting

  1. Clone this repository git clone https://github.com/IgorKowalczyk/majobot.git
  2. Run npm install to get all dependencies,
  3. Grab a Discord Bot token and client secret on Discord's developer portal Tutorial
  4. Fill config.js, emojis_config.js with your values
  5. Create new file named .env Remember - the file is super secret, better to not share it.
  6. In .env file set this values:
    • Required:
    • TOKEN - Bot token from Discord Developer portal [no. 3]
    • PREFIX - Bot prefix, used to run commands eg. your-prefix help
    • ID - Your Discord Bot ID
    • AMEAPI - your Amethyste API token [Tutorial]
    • BRAINID - Your Brainshop AI Brain ID [Tutorial]
    • BRAINKEY - Your Brainshop AI Brain Key [Tutorial]
    • GENIUS - Your Genius API Key [Tutorial]
    • MYSQL_DATABASE - Your MYSQL database name
    • MYSQL_HOST - Your MYSQL Host name
    • MYSQL_PASSWORD - Your MYSQL user password
    • MYSQL_USER - Your MYSQL User name who can acces to the database
    • COOKIES - Your Youtube Cookies [Tutorial]
    • Not required (You can leave them blank):
    • DOMAIN^ - your website domain, eg https://example.com
    • PORT^ - your website port, eg 8080. [Note: If you are using heroku, don't add this value. Heroku binds port automatically!]
    • DASHBOARD=[true/false] - if true the bot will be hosted with web dasboard, if false the bot will be hosted without web dashboard.
    • SESSION_SECRET^ - Session secret key, random sequence of words, letterss or numbers
    • SECRET^ - Client secret from Discord Developers portal [no. 3]
    • ANALYTICS - Google Trakcing ID, for Website analytics [Tutorial]
    • RECAPTCHA_KEY^ - Google Recaptcha v2 site key
    • CONTACT_WEBHOOK_ID^ - Your contact form webhook ID
    • CONTACT_WEBHOOK_TOKEN^ - Your contact form webhook token
    • STATUS_WEBHOOK_ID - Your status webhook ID
    • STATUS_WEBHOOK_TOKEN - Your status webhook token
  7. Run npm run start

Note: See the example .env file below!

Note: Values with ^ are required to run web dashboard!

Note: Discord webhook link syntax: https://discord.com/api/webhooks/HERE-IS-WEBHOOK-ID/HERE-IS-WEBHOOK-TOKEN)

Dashboard hosting

  1. In .env file set the DASHBOARD config to true and assign the PORT eg. 8080. (See example .env file)
  2. Fill dashboard config in (config.js and .env)
  3. Add the redirect uri here: https://discord.com/developers/applications/YOUR-BOT-ID/oauth2
    •  https://your-domain.com
       https://your-domain.com/callback
       https://your-domain.com/dashboard
       https://your-domain.com/login
      
  4. Run npm run dashboard in your terminal
  5. If everyting is ok go to your dashboard in browser (eg. to localhost:8000)

Note: See the example .env file below!

Additional info

If you are hosting the site locally it is best to generate certificates for it. If you have them:

  1. Change certs: false & localhost: false values in config.js to true
  2. Place the server.cert & server.key certs in /dashboard/certs/ directory

.env config table

.env varriable Description Required
TOKEN The bot token (Remember! The TOKEN is super secret) ✔️
PREFIX The default bot prefix (eg. !majo) ✔️
ID Your Discord Bot ID ✔️
AMEAPI Your Amethyste api token ✔️
BRAINID Your Brainshop AI Brain ID ✔️
MYSQL_DATABASE Your MYSQL database name ✔️
MYSQL_HOST Your MYSQL Host ✔️
MYSQL_USER Your MYSQL user ✔️
MYSQL_PASSWORD Your Brainshop AI Brain Key ✔️
GENIUS Your genius API Key ✔️
DOMAIN Your website domain (eg https://example.com)* ❌/✔️
PORT Your webiste port, (eg. 8008 )* ❌/✔️
DASHBOARD The Web-Dashboard config value. (eg. true/false, default value: false)*
SESSION_SECRET Random sequence of words, letterss or numbers* ❌/✔️
SECRET The bot client secret (Remember! The SECRET value is Super-Secret)* ❌/✔️
ANALYTICS Google analytics tracking ID, used in Web-Dashboard*
RECAPTCHA_KEY Google recaptcha v2 key* ❌/✔️
COOKIES Your youtube cookies ✔️
CONTACT_WEBHOOK_ID Your contact form webhook ID
CONTACT_WEBHOOK_TOKEN Your contact form webhook token
STATUS_WEBHOOK_ID Your status webhook ID
STATUS_WEBHOOK_TOKEN Your status webhook token
  • * = Required to run the web dashboard!

Example .env file

Example .env file

.env.example

# Environment Config

# Required
TOKEN=YOUR_TOKEN_GOES_HERE
PREFIX=!majo
ID=YOUR_BOT_ID
AMEAPI=YOUR_AMETHYSTE_API_TOKEN
MYSQL_DATABASE=YOUR_MYSQL_DATABASE_NAME
MYSQL_HOST=YOUR_MYSQL_HOST
MYSQL_PASSWORD=YOUR_MYSQL_USER_PASSWORD
MYSQL_USER=YOUR_MYSQL_DATABASE_USER
BRAINID=YOUR_BRAINSHOP_AI_BRAIN_ID
BRAINKEY=YOUR_BRAINSHOP_AI_BRAIN_KEY
GENIUS=YOUR_GENIUS_API_KEY
CONTACT_WEBHOOK_TOKEN=YOUR_CONTACT_FORM_WEBHOOK_TOKEN
CONTACT_WEBHOOK_ID=YOUR_CONTACT_FORM_WEBHOOK_ID
STATUS_WEBHOOK_TOKEN=YOUR_STATUS_WEBHOOK_TOKEN
STATUS_WEBHOOK_ID=YOUR_STATUS_WEBHOOK_ID
COOKIES=YOUR_YOUTUBE_COOKIES
RECAPTCHA_KEY=YOUR_RECAPTCHA_KEY

# Not required
DASHBOARD=[true/false]
DOMAIN=YOUR_WEBSITE_DOMAIN
PORT=YOUR_WEBSITE_PORT
SESSION_SECRET=YOUR_SESSION_SECRET_(RANDOM_WORDS)
SECRET=YOUR_BOT_CLIENT_SECRET
ANALYTICS=YOUR_GOOGLE_TRACKING_ID
# Note: !majo is the default prefix, you can change it later.

Tokens tutorials

Discord Token

Soon!

Amethyste Api

Soon!

AI Keys

Soon!

Youtube

Soon!

Genius

Soon!

Analytics ID

Soon!

Heroku

Soon!

Contributors

Issues

If you have any issues with the page please create new issue here

Pull Requests

When submitting a pull request:

  • Clone the repo.
  • Create a branch off of master and give it a meaningful name (e.g. my-awesome-new-feature).
  • Open a pull request on GitHub and describe the feature or fix.

License

This project is licensed under the MIT. See the LICENSE file for details

About

❤️ Majo.exe - Discord Bot for Fun, Memes, Images, Giveaway, Economy, Anime, NSFW & More

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 89.0%
  • EJS 6.0%
  • CSS 4.5%
  • Other 0.5%