aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 98208f153ed3488d4f472ababc1f498aed09470e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Dis.ml - An OCaml wrapper for the Discord API

This is a library for creating bots on [Discord](https://discordapp.com/). Dis.ml uses JaneStreet's Async and Core libs and I highly recommend having a solid understanding of both of these before using this library.

## State of the project
The dev branch is fully capable of creating a simple bot at this point in time.

#### What is implemented?
* The full Discord REST API
* Complete gateway support (sans voice)
* Automatic sharding
* Event dispatch to a user-defined consumer
* Automatic reconnection of dropped gateway connections
* Automatic rate limit handling

#### What is not implemented?
* Abstractions for Discord Objects (Message, Guild, Channel, etc) (**IN PROGRESS!**)
* Voice
* Cache

## Getting started
In order to get started you'll first need to install OCaml (of course). I recommend using OPAM and Dune as a package manager and build tool respectively.

The project is not currently uploaded to opam. This will happen with the first stable release. If you do not use opam, see `disml.opam` for build instructions.

You'll find an example bot in /bin directory.