Giter VIP home page Giter VIP logo

gophelper's Introduction

Gophelper

Go report

Simple bot written in Golang using DiscordGo.

Introduction

This is my first project using Golang, originally written just for fun in midnight, rewritten to be flexible and easily scalable next 2 days

Features

  • Gophelper has simple rate limiter that can has different config per command
  • Gophelper provides easy way to add commands with ability to use arguments
  • Commands can contain spaces e.g. play pingpong may be just one command
  • Nothing stops you also from creating multiple routers which may be used for a different purpose e.g. providing different language based on router's prefix
  • Routers support middleware to control what passes through

How do I install this

  1. Clone repo
  2. Edit config files to your preferences and add BOT_TOKEN env variable which will store your bot token
  3. cd to cloned repo to directory src/Main
  4. Run go build . command
  5. Launch built executable

Config files

Gophelper provides easy to edit JSON config files.
It also provides way to translate bot into multiple languages without much effort, in this repo you can see two languages: polish and english, nothing stops you by expanding it by more languages

Pulls, forks and issues

Be free to fork this repo, if you have any comment regarding to quality of my Golang code - go ahead and open issue/add pull request. My first meet with go was 3 days ago, so I know many things can be done better.

Commands

Gopher comes with some commands out of a box, all of them are pretty simple
Here's the list of some of them:

Alias Description
help Provides either list of categories, commands or information about them.
You may spot characters like _ in Usage, there's how to interpret them:
* [] simply means attribute
* _ before argument means it's non obligatory, you may skip it or set some random things in its place
* {} e.g. [_user{mention/id}] means you can put either user id or user mention in this place
game pingpong Play ping pong match versus bot
8ball Magically answers your questions
stats Shows information about you or given user
hug/kitty/doggie/waifu etc. Gives you specified thing
lang Sets language config of router to given file located in "Languages/" e.g. go lang english.json

Credits

  • DiscordGo developers
  • Creators of images used in kittie/doggie/kiss/hug/waifu and other commands :D

Media

Gophelper

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.