Giter Site home page Giter Site logo

calypsobot's Introduction



Calypso Discord Bot

A fully customizable bot built with discord.js

AboutFeaturesInstallationSetting UpLicenseCredits

About

Calypso is an open source, fully customizable Discord bot that is constantly growing. She comes packaged with a variety of commands and a multitude of settings that can be tailored to your server's specific needs. Her codebase also serves as a base framework to easily create Discord bots of all kinds. You can invite her to your Discord server using this link! Also, you can join the official Calypso Support Server for all questions, suggestions, and assistance!

If you liked this repository, feel free to leave a star ⭐ to help promote Calypso!

Features

110+ commands and counting across 8 different categories!

  • Administration: A huge amount of settings to customize with commands like setprefix, setwelcomemessage, and setverificationrole
  • Moderation: Commands such as kick, ban, and mute to assist your moderator staff
  • Fun & Games: Tons of fun commands like trivia, meme, emojify, and a variety of animal pic commands like cat, dog, and fox
  • Information: Commands like userinfo and serverinfo for general utility
  • Points: A unique points system with a rotating winner that has commands like leaderboard, givepoints, and crown
  • Color: Change your Discord color with commands like color, createcolor and randomcolor
  • Owner: Owner specific commands like eval and servers
  • Miscellaneous: All other commands like feedback and bugreport

Calypso also comes packed with a variety of features, such as:

  • Auto role assignment
  • Server verification via reactions
  • Welcome messages and farewell messages
  • Logging for mod commands and various events
  • Moderator only channels
  • A starboard
  • Auto kicking when a warn limit is reached
  • Auto random colors when members join
  • Per command disabling
  • And much more! There are over 30+ settings to tweak!

Installation

You can add Calypso to your server with this link! Alternatively, you can clone this repo and host the bot yourself.

git clone https://github.com/sabattle/CalypsoBot.git

After cloning, run an

npm install

to snag all of the dependencies. Of course, you need node installed. I also strongly recommend nodemon as it makes testing much easier.

Setting Up

You have to create a config.json file in order to run the bot (you can use the example file provided as a base). Your file should look something like this:

{
  "token": "your_token_here",
  "ownerId": "your_ID_here",
  "bugReportChannelId": "bug_report_channel_ID_here",
  "feedbackChannelId": "feedback_channel_ID_here",
  "serverLogId": "server_log_ID_here",
  "apiKeys": {
    "catApi": "your_API_key_here",
    "googleApi": "your_API_key_here"
  }
}

Visit the Discord developer portal to create an app and use the client token you are given for the token option. ownerId is your own Discord snowflake. bugReportChannelId, feedbackChannelId, and serverLogId should be set to respective text channels on your own server. To get keys for supported APIs, vist:

After your config.json file is built, you have enable Privileged Intents on your Discord developer portal. You can find these intents under the "Bot" section, and there are two ticks you have to switch on. For more information on Gateway Intents, check out this link.

Once done, feel free to launch Calypso using the command node app.js or nodemon app.js. If on Linux, you can also kick off using the start.sh script. If you need additional help setting up, join the Calypso Support Server!

Important Note: Do not use Heroku to host Calypso! Calypso uses SQLite as its database which backs up its data store on disk. Heroku clears its contents often, so your database will be wiped. Read more here.

Emojis

If you are self-hosting Calypso, you may notice that the emojis for certain commands are not displaying. This is because Calypso uses custom emojis for a variety of her commands. These emojis will have to be added to your own server, and you will have to change the corresponding IDs in the emojis.json util if you would like to use them. Or, you can replace the emojis in emojis.json with ones you already have access to. If you would like to use Calypso's original custom emojis, hop into the Calypso Support Server where you can snag them all.

Colors

Upon being invited to a server, Calypso will automatically create 6 predefined colors for your server to enjoy. To add more, use the provided createcolor command to quickly and easily create new colors.

To add colors manually, first create a few empty roles at the bottom of your server's role hierarchy. The names of these roles must begin with the character #, for example, #Red or #Blue. Then change the color of that role to your desired hex, and that's it! After they are set up, the members of your server can then change their color by using Calypso's color commands! Credit to Threebow for the idea.

Alt Text

To-Do

Calypso is in a continuous state of development. New features/updates may come at any time. Some pending ideas are:

  • Music
  • Automod
  • Stream alerts
  • Custom tag/reaction system

License

Released under the GNU GPL v3 license.

Credits

  • Sebastian Battle - Initial work - github
  • Kyle Glaws - github
  • CommradeFido#5286 - All art and graphics
  • Red Discord Bot - Initial trivia - github
  • Threebow - Ideas and tutorials - github

calypsobot's People

Contributors

sabattle avatar bonglad avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.