A simple, type-safe, and lightweight Node.js library to generate Discord Together invite links for over 23+ activities and games, supporting all versions of discord.js.
Install discord-together
npm install discord-together@latestInstall discord.js
npm install discord.js@latestSupports all versions of Discord.js
- ๐ Easy to use
- ๐ Multiple server support
- ๐ ๏ธ Works with all Discord.js versions
- ๐ฎ 23+ games and activities
- ๐ชถ Lightweight and type-safe
- ๐ค Actively maintained
- ๐ฆ Extendable configuration
A simple example using this package with Discord.js v14+:
import { Client, GatewayIntentBits } from 'discord.js';
import { DiscordTogether } from 'discord-together';
const client = new Discord.Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] });
const togetherInstance = new DiscordTogether(client);
client.on('messageCreate', async message => {
if (message.content === 'start') {
if(message.member.voice.channel) {
togetherInstance.createTogetherCode(message.member.voice.channel.id, 'chess').then(async res => {
return message.channel.send(`${res.invite}`);
})
};
};
});
client.login('TOKEN');new DiscordTogether(client: Client, applications?: ApplicationConfig)client: Your Discord.js client instance (must be logged in).applications(optional): Custom application config. Defaults to built-in games.
createTogetherCode(channelId: Snowflake, application: string): Promise<{ code: string, invite: string }>
channelId: The ID of the voice channel.application: The key of the game/activity (see Available Games).- Returns: An object with the invite code and the full invite URL.
import { createDiscordTogether } from "discord-together";
const createTogetherCode = createDiscordTogether(client, applications);- Returns the
createTogetherCodefunction directly for functional usage.
You can extend or override the default games with your own:
import { createApplicationConfig, DefaultApplicationsConfig, DiscordTogether } from "discord-together";
// Extend the default config with your own games
const extendedConfig = createApplicationConfig(
{ monopoly: "your_snowflake_id" },
{ extends: [DefaultApplicationsConfig] }
);
const instance = new DiscordTogether(client, extendedConfig);import { createDiscordTogether } from "discord-together";
// Returns the createTogetherCode function
const createTogetherCode = createDiscordTogether(client, applications);| Key | Description |
|---|---|
| youtube | YouTube Together |
| youtubedev | YouTube Dev |
| poker | Poker Night |
| betrayal | Betrayal.io |
| fishing | Fishington.io |
| chess | Chess in the Park |
| chessdev | Chess Dev |
| lettertile | Letter Tile |
| wordsnack | Word Snack |
| doodlecrew | Doodle Crew |
| awkword | Awkword |
| spellcast | SpellCast |
| checkers | Checkers in the Park |
| puttparty | Putt Party |
| sketchheads | Sketch Heads |
| ocho | Ocho |
| puttpartyqa | Putt Party QA |
| sketchyartist | Sketchy Artist |
| land | Land |
| meme | Meme |
| askaway | Ask Away |
| bobble | Bobble |
| bashout | Bash Out |
- License: MIT
- Author: RemyK
- Special thanks: Ayomits for the TypeScript rewrite, and all contributors and community members!
This package is not affiliated with Discord Inc. or YouTube Inc.
If you have any problems or questions, feel free to contact RemyK.
- Discord server: Server Link
- GitHub repository: discord-together
Made with โค by RemyK