Skip to main content


Handlers. Redefined.

A complete, customizable, typesafe, & reactive framework for discord bots

NPM version NPM downloads License MIT Lines of code


  • For you. A framework that's tailored to your exact needs.
  • Lightweight. Does a lot while being small.
  • Latest features. Support for discord.js v14 and all of its interactions.
  • Start quickly. Plug and play or customize to your liking.
  • works with bun and node out the box!
  • Use it with TypeScript or JavaScript. CommonJS and ESM supported.
  • Active and growing community, always here to help. Join us
  • Unleash its full potential with a powerful CLI and awesome plugins.

📜 Installation

Start here!!

👶 Basic Usage

export default commandModule({
type: CommandType.Slash,
//Installed plugin to publish to discord api and allow access to owners only.
plugins: [publish(), ownerOnly()],
description: 'A ping pong command',
execute(ctx) {
ctx.reply('Hello owner of the bot');

🤖 Bots Using sern

  • Community Bot, the community bot for our discord server.
  • Vinci, the bot for Mara Turing.
  • Bask, Listen your favorite artists on Discord.
  • ava, A discord bot that plays KNGI and Gensokyo Radio.
  • Murayama, :pepega:
  • Protector (WIP), Just a simple bot to help enhance a private minecraft server.
  • SmokinWeed 💨, A fun bot for a small - but growing - server.
  • Man Nomic, A simple information bot to provide information to the nomic-ai discord community.
  • Linear-Discord Display and manage a linear dashboard.


It is highly encouraged to use the command line interface for your project. Don't forget to view it.

👋 Contribute

  • Read our contribution guidelines carefully
  • Pull up on issues and report bugs
  • All kinds of contributions are welcomed.