Skip to content

Popii 1.0 — Cakemix

Popii


Cakemix is the codename for Popii 1.0, a convention-first Discord bot framework for Bun and TypeScript.

import { command } from "popii-framework";
export default command({
name: "ping",
description: "Replies with pong",
slash: true,
async do(pop) { await pop.reply("Pong!"); },
});
Terminal window
bunx popii init
cd my-bot
bun run dev

Popii discovers commands, events, middleware, snaps, and tasks from the project structure. It provides hot reload, typed plugins, localization, sharding, testing utilities, and a production dashboard.

The 1.0 dashboard uses Hono, Arctic Discord OAuth, encrypted server-side sessions, SQLite migrations, guild-scoped authorization, CSRF protection, audit records, and health checks.

import { webPlugin } from "popii-framework";
webPlugin({
publicUrl: "https://bot.example.com",
oauth: {
clientId: process.env.DISCORD_CLIENT_ID!,
clientSecret: process.env.DISCORD_CLIENT_SECRET!,
},
});

Generate the required POPII_WEB_ENCRYPTION_KEY with popii secret generate web.

popii init popii plugin add <package>
popii dev [entry] popii plugin remove <package>
popii sync [entry] popii plugin search <query>
popii test [...bunArgs] popii plugin list
popii generate <type> <name> popii db <generate|migrate|status>
popii doctor [--json] popii web check
popii deploy <target> popii secret generate web

See the documentation for tutorials, production deployment, plugin development, and the 1.0 upgrade guide.

Requires Bun 1.1+ and Discord.js 14. MIT licensed.