Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/qeled/discordie
Predictable JavaScript abstractions for Discord API.
https://github.com/qeled/discordie
Last synced: 30 days ago
JSON representation
Predictable JavaScript abstractions for Discord API.
- Host: GitHub
- URL: https://github.com/qeled/discordie
- Owner: qeled
- License: bsd-2-clause
- Created: 2015-10-08T00:40:39.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2021-04-27T16:42:34.000Z (over 3 years ago)
- Last Synced: 2024-08-30T21:21:19.903Z (3 months ago)
- Language: JavaScript
- Homepage: https://qeled.github.io/discordie/
- Size: 5.54 MB
- Stars: 190
- Watchers: 15
- Forks: 46
- Open Issues: 30
-
Metadata Files:
- Readme: readme.md
- Changelog: changelog.md
- License: LICENSE
Awesome Lists containing this project
- discord-api-libs - discordie - Predictable JavaScript abstractions for Discord API. (Libraries / JavaScript)
README
# Discordie
[![npm](https://img.shields.io/npm/dm/discordie.svg)](https://www.npmjs.com/package/discordie)
A Node.js module providing a set of interfaces to interact with Discord API.
[**Documentation**](http://qeled.github.io/discordie/)
**Requires at least Node.js 4.0.0.**
**No native modules required to work with audio. Choose from precompiled (default) or `node-opus` (optional).**
Join [#node_discordie](https://discord.gg/0SBTUU1wZTYM8nHo) in [Discord API](https://discord.gg/0SBTUU1wZTYM8nHo).
## Fully Implemented
* Messaging
* Role and channel permission management API
* Member management API (kicking, banning, etc.)
* Direct messages
* Voice encoding, sending, decoding and receiving
(audio streaming example: [`examples/encoderstream.js`](https://github.com/qeled/discordie/blob/master/examples/encoderstream.js))
* Guild (server) and channel management API
* Local user profile (username change, statuses, avatars)
* Multiserver voice support## Documentation
http://qeled.github.io/discordie/
Mirrors inline documentation in files:
* `lib/interfaces/*.js`
* `lib/models/*.js`
* `lib/voice/*.js`
* `lib/Constants.js`
* `lib/index.js`## Example
```js
var Discordie = require("discordie");
var Events = Discordie.Events;var client = new Discordie();
client.connect({ token: "" });
client.Dispatcher.on(Events.GATEWAY_READY, e => {
console.log("Connected as: " + client.User.username);
});client.Dispatcher.on(Events.MESSAGE_CREATE, e => {
if (e.message.content == "ping")
e.message.channel.sendMessage("pong");
});
```## Related
### Library comparison: https://discordapi.com/unofficial/comparison.html
**.NET**:
[RogueException/**Discord.Net**](https://github.com/RogueException/Discord.Net) ||
[Luigifan/**DiscordSharp**](https://github.com/Luigifan/DiscordSharp) ||
[robinhood128/**DiscordUnity**](https://github.com/robinhood128/DiscordUnity)**Node.js**:
[izy521/**discord.io**](https://github.com/izy521/discord.io) ||
[hydrabolt/**discord.js**](https://github.com/hydrabolt/discord.js) ||
[abalabahaha/**eris**](https://github.com/abalabahaha/eris)**Python**:
[Rapptz/**discord.py**](https://github.com/Rapptz/discord.py)**Ruby**:
[meew0/**discordrb**](https://github.com/meew0/discordrb)**Go**:
[bwmarrin/**discordgo**](https://github.com/bwmarrin/discordgo)**Rust**:
[SpaceManiac/**discord-rs**](https://github.com/SpaceManiac/discord-rs)**PHP**:
[teamreflex/**DiscordPHP**](https://github.com/teamreflex/DiscordPHP) ||
[Cleanse/**discord-hypertext**](https://github.com/Cleanse/discord-hypertext)**Java**:
[austinv11/**Discord4J**](https://github.com/austinv11/Discord4J) ||
[DV8FromTheWorld/**JDA**](https://github.com/DV8FromTheWorld/JDA/) ||
[BtoBastian/**Javacord**](https://github.com/BtoBastian/Javacord)**Lua**:
[SinisterRectus/**Discordia**](https://github.com/SinisterRectus/Discordia) ||
[satom99/**litcord**](https://github.com/satom99/litcord)