Moxie is a modular, self-hosted Discord bot built with TypeScript, Discord.js, and PostgreSQL.
The goal of Moxie is to provide a powerful, extensible alternative to bots like MEE6, while giving server owners full control over features, data, and customization.
- 🔧 Custom Commands (admin-defined, database-backed)
- 🎭 Reaction Roles
- 🛡️ Moderation Commands & Action Logs
- 🎉 Community / Fun Commands
- 📈 Leveling System (with future shop/economy support)
- 🎫 Ticket System (button-based)
- 🌐 Web Admin Dashboard (Discord OAuth)
- 🗄️ PostgreSQL-backed persistence
- 🔌 Future MCP / automation integrations
Moxie is built to be a self-hosted, modular alternative to all-in-one Discord bots like MEE6 — with full control over features, data, and customization.
- Own your data (PostgreSQL-backed, no vendor lock-in)
- Modular by design (enable features per guild)
- Built for growth (clean architecture + future dashboard + automation/MCP hooks)
- Node.js
- TypeScript
- Discord.js v14
- PostgreSQL (planned)
- Prisma (planned ORM)
- Docker (planned)
- Next.js (planned admin dashboard)
moxie-bot/
├── src/
│ ├── commands/ # Slash command implementations
│ │ └── ping.ts
│ ├── events/ # Discord event handlers
│ │ ├── interactionCreate.ts
│ │ └── ready.ts
│ ├── types.ts # Shared bot typings
│ ├── config.ts # Environment configuration
│ ├── deploy-commands.ts # Slash command registration
│ └── index.ts # Bot entry point
├── .env.example # Environment variable template
├── .gitignore
├── LICENSE
├── package.json
├── package-lock.json
├── tsconfig.json
├── README.md
└── ROADMAP.md
npm installcp .env.example .envFill in the following values:
- DISCORD_TOKEN — your bot token
- DISCORD_CLIENT_ID — application client ID
- DISCORD_GUILD_ID — test server ID (guild deploy for fast iteration)
npm run deploynpm run devIf successful, you should see:
✅ Logged in as Moxie#1234
- /ping — verify the bot is online and responsive
Moxie uses Discord’s built-in permission system and will later support:
- Role-based access control per module
- Admin-only command restrictions
- Feature-level permissions configurable per guild
See ROADMAP.md for detailed milestones and planned features.
Moxie is designed to be:
- Self-hosted — no vendor lock-in
- Modular — features enabled per guild
- Multi-guild — built-in from day one
- Extensible — clean architecture for future growth
Moxie is 100% open source and free to self-host.
If you find Moxie useful and want to support its continued development, you can:
- ⭐ Star the repository
- 🐛 Report bugs or contribute code
- 💖 Sponsor the project on GitHub
👉 GitHub Sponsors: https://github.com/sponsors/McGeeLabs
There are no paid features and nothing locked behind a paywall — support is completely optional and deeply appreciated.