Giter Site home page Giter Site logo

radixsh / qubitz Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 3.94 MB

Qubitz is an uwubot and a music bot that can upload custom emojis and help you find people by their roles.

Python 100.00%
discord discord-bot discordpy bot discordcogs discord-music-bot discordcommands

qubitz's Introduction

Bitz? Quartz?

Qubitz is an uwubot and a music bot with custom emoji uploading capability, the ability to find people by their roles, and connectivity to The Cat API just for fun.

I began developing an uwubot named Bitz for Discord in June 2020, in discord.js because the first guides I found were in JavaScript. This turned out to be very misguided, because (as I realized when our AP Computer Science Principles teacher taught us Python and the basics of discord.py later that year) discord.py is far superior. Over the summer of 2020, I developed and hosted both bots on my Chromebook. Sometime or other I also spun up another discord.py bot, Amicitia, to help students in a university Discord server find people with the same major (majors being roles).

I've wanted to translate Bitz's uwubot functionalities to Python for a while, and I finally did, almost two years later. Bitz, the original uwubot I created, has been translated to Python and conflated with Quartz's capabilities to form Qubitz.

Development of Qubitz is stagnant. I only update when I don't have homework and want to fix a breaking change.

Functionalities

Qubitz's functionalities include:

Music

  • .p[lay] <search term>: Streams the first YouTube result in vc.
  • .np: Displays the current song.
  • .q[ueue]: Displays the song queue.
  • .rm <some song>: Removes the specified song from the queue.
  • .skip: Skips the currently playing song.
  • .stop: Disconnects Qubitz from vc.

Utilities

  • .l[ist]: Lists each role and everyone in them.
  • .f[ind] <some role>: Prints a list of everyone with the specified role.
  • .p[ing]: Pokes Qubitz to see if they're awake.
  • .up[time]: Displays how long Qubitz has been awake.
  • .i[nfo] ("all"): Displays guild and channel information, and if "all" is given as an argument, then displays guild member information as well.

Miscellaneous

  • .create <emoji_name>: Sets attached image as a custom server emoji with the given name.
  • .uwu[ify] <something>: Uwuifies your message, deleting the command message.
  • .echo <something>: Echoes back your message, deleting the command message.
  • .c[at]: Shows a cat from The Cat API.

Technologies

Usage

To set Qubitz up locally, you'll need python3 and the packages for discord, requests, and aiohttp.

You'll also need an API token, which you get by creating an application in your Discord developer portal. Click the subheading "bot" in the menubar on the left and add a bot, and a secret token will have been generated under the bot's username.

Create a file called env.py with this as its contents:

TOKEN = "your-token-here-between-quotes"

In the developer portal again, under Bot, enable the server members and message content intents. Under OAuth2 > URL Generator, generate an invite link by selecting the "bot" scope and adding the following permissions:

  • Read Messages / View Channels
  • Send Mesages
  • Manage Messages
  • Embed Links
  • Attach Files
  • Use External Emojis
  • Add Reactions

Then you can run Qubitz with python3 index.py (or nodemon --exec python3 index.py).

Acknowledgements

Bitz was named by my close friend Tumega500#1234.

License

Released under GNU GPL v3.

qubitz's People

Contributors

radixsh avatar

Watchers

 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.