Guides
Fluxer.js v3.0.0. Install and login first, then messages, channels, members, and permissions. Use the task list below when you know what you want to do but not which page to open.
Where do I…?
Jump to a guide by task. The full map is on Where do I...?.
- Send, reply, or forwardsending-without-reply
- Send in a voice channelsending-without-reply
- Embeds and filesembeds
- Fetch or search historymessage-history
- Reactions and collectorscollectors
- Channels, overwrites, linkschannels
- Roles and permissionsroles
- Kick, ban, or timeoutmoderation
- Emojis and stickersemojis
- Webhookswebhooks
- Invites and vanity URLsinvites
- Direct messagesdirect-messages
- Content warningscontent-warnings
- Apply for server discoveryserver-discovery
- Shard a large botsharding
- Play voice audiovoice
Getting Started6
Install, login, prefix commands, errors, cache, and a task index.
- InstallationInstall @fluxerjs/core, set your token, and run a first bot.
- Basic BotLogin, handle Ready, and reply to !ping. Start here after install.
- Prefix CommandsParse !commands with parsePrefixCommand and dispatch handlers.
- ErrorsCatch FluxerError, read ErrorCodes, and turn API failures into useful replies.
- CachingLimits, identity-preserving snapshots, sweeps, and how guild/channel caches stay aligned.
- Where do I...?Task index for common bot jobs, with the guide and SDK method to use.
Popular Topics13
Send, reply, embeds, channels, events, and collectors.
- Sending MessagesFetch a channel, then channel.send. Reply with message.reply. Forward with send({ forward }).
- Direct MessagesSend and receive DMs with user.send and MessageCreate.
- EmbedsBuild rich embeds with EmbedBuilder and send them without toJSON().
- Editing EmbedsSend an embed, then edit it in place with message.edit.
- Embed MediaAdd images and thumbnails to embeds with EmbedBuilder and EmbedMediaOptions.
- BuildersEmbedBuilder, AttachmentBuilder, and MessagePayload without calling toJSON yourself.
- ReactionsAdd and remove reactions, and listen with MessageReactionPayload.
- Allowed MentionsControl @everyone, role, and reply pings with allowedMentions.
- Message HistoryFetch messages, pin history, search, and bulk delete. Bots use preloadMessages, not bulkFetchMessages.
- ChannelsFetch a channel, then delete or send. Create text, voice, category, or link channels. Edit overwrites.
- InvitesCreate and list channel invites, plus guild vanity URLs.
- EventsListen to gateway events with client.on. Handlers receive hydrated structures, camelCase DTOs, or wire payloads depending on the event.
- CollectorsWait for a reply or reaction with awaitMessages / awaitReactions.
Guilds & Moderation8
Roles, permissions, moderation, members, and server settings.
- RolesCreate, fetch, edit, and delete guild roles. Create accepts name, color, and permissions only.
- PermissionsCheck member permissions (guild-level and channel-specific), bot permissions via guild.members.me, owner override, and PermissionFlags.
- ModerationBan, kick, timeout, and unban with permission checks.
- BansList guild bans and remove them with fetchBans and GuildBan.unban.
- Member SearchSearch guild members with guild.members.search and camelCase filters.
- Content WarningsSet guild and channel content warning level and custom warning text.
- Server DiscoveryApply, edit, or withdraw a guild discovery listing. Bots cannot join via discovery.
- Emojis & StickersFetch, create, clone, and bulk-create guild emojis and stickers.
Additional13
Sharding, voice, webhooks, media, presence, and self-hosting.
- ShardingAdvanced: scale Fluxer bots across gateway shards, worker threads, processes, and multiple machines.
- PresenceSet online status and custom status text with setPresence.
- DiscoveryPoint a Client at a self-hosted instance with Client.fromDiscovery.
- Self-hosting & multi-instanceAdvanced: run bots against hosted Fluxer, a self-hosted instance, or both in the same Node process. One Client per instance. ClientCluster (beta) can add/remove runtimes without restart.
- Wait for All GuildsDelay Ready until every guild from the handshake is in cache.
- VoiceAdvanced: join a voice channel and play WebM/Opus audio with @fluxerjs/voice.
- WebhooksCreate, list, send, and delete webhooks without sitting on the gateway.
- Webhook Attachments & EmbedsSend embeds with or without a title, and attach files to webhook messages - same API as channel messages.
- GIFs (Klipy)Send Klipy links as gifv content, or resolve a GIF URL for embeds.
- File AttachmentsUpload files with AttachmentBuilder or plain { name, data } / { name, url }.
- Attachments by URLAttach a remote file with files: [{ name, url }] instead of downloading first.
- Profile URLsGet avatar, banner, and other CDN URLs easily with User/Webhook/GuildMember methods or standalone CDN helpers for raw API data.
- Users & BotsFetch users, check FriendlyBot flags, and load the bot application object.
Upgrading2
Breaking changes from 2.x and the 1.x rewrite.
Other1
Coming from discord.js.