@mogul-development/mogulcord

a non shit discord client for the spec protocol based on eris

Usage no npm install needed!

<script type="module">
  import mogulDevelopmentMogulcord from 'https://cdn.skypack.dev/@mogul-development/mogulcord';
</script>

README

MogulCord

a non shit discord client using the spec protocol

why?

because eris is fucking shit

about

  • uses the spec protocol
  • its made by (mostly me) so its good!
  • eris is shit

How to setup the gateway

  • setup a ubuntu VM or ubuntu WSL
  • install redis and rabbitmq-server
  • Download the gateway binary for your platform from the gateway releases
  • create a file called gateway.toml and follow the instructions in the gateway readme
  • run the gateway with gateway -loglevel debug (loglevel is optional here)

example gateway.toml:

token = "yes" # Discord token
events = ["MESSAGE_CREATE", "GUILD_CREATE", "GUILD_DELETE", "USER_UPDATE", "MESSAGE_REACTION_ADD"] # array of gateway event names to publish

# everything below is optional

intents = ["GUILDS", "GUILD_MESSAGES", "GUILD_MESSAGE_REACTIONS"] # array of gateway intents to send when identifying
# https://gist.github.com/msciotti/223272a6f976ce4fda22d271c23d72d9

[shards]
count = 1 # one shard
ids = [0]

[broker]
type = "amqp" # only supported type; any other value sends/receives from STDIN/STDOUT
group = "gateway"
message_timeout = "2m" # this is the default value: https://golang.org/pkg/time/#ParseDuration

[prometheus]
address = ":8080"
endpoint = "/metrics"

[shard_store]
type = "redis" # only supported type
prefix = "gateway" # string to prefix shard-store keys

[presence]
# https://discord.com/developers/docs/topics/gateway#update-status

[amqp]
url = "amqp://tm:Password@localhost/"

[redis]
url = "localhost:6379"
pool_size = 5 # size of Redis connection pool