Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: weekly
day: monday
open-pull-requests-limit: 5
groups:
docusaurus:
patterns:
- "@docusaurus/*"
- "prism-react-renderer"
- "@mdx-js/*"
- "@easyops-cn/docusaurus-search-local"
update-types:
- minor
- patch
dev-tools:
patterns:
- "typescript"
- "@types/*"
update-types:
- minor
- patch

- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly
day: monday
28 changes: 28 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: CI

on:
pull_request:
branches:
- master
push:
branches-ignore:
- master
- gh-pages

jobs:
build:
name: Build and verify docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: '20'

- name: Install dependencies
run: yarn

- name: Build
run: yarn build
59 changes: 59 additions & 0 deletions blog/2026-04-16-documentation-refresh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
slug: documentation-refresh-2026
title: Documentation Refresh — Tutorials, Dark Theme, Search
authors: [mocha-team]
tags: [docs, release]
description: We rebuilt the Mocha documentation site from the ground up — new tutorials, dark theme, local search, and every feature documented with examples and troubleshooting.
---

The Mocha documentation site just got a full refresh. Every feature is now documented, the theme matches the main mocha-bot.xyz site, and there's a proper tutorial track for people getting started with the bot.

<!-- truncate -->

## What's new

### Tutorials

There's a new **Tutorials** section with four step-by-step walkthroughs that take you from "I've never used this bot" to "I'm moderating a cross-server room":

- **[Getting Started](/tutorials/getting-started)** — invite the bot, set up permissions, create your first room.
- **[Connect Two Servers](/tutorials/connect-two-servers)** — bridge two Discord servers end-to-end with a test checklist.
- **[Share a Room via Invitation](/tutorials/share-via-invite)** — the full invitation flow with aliases, usage caps, and expiration.
- **[Curate Your Room](/tutorials/curate-your-room)** — editing details, kicking channels, enabling personalization, deleting rooms.

### Full feature coverage

Every slash command, chat behavior, and room feature now has its own reference page with:

- Exact parameters with types and whether they're required.
- What the bot does under the hood (without dragging in implementation details).
- A troubleshooting table for the errors you're most likely to hit.
- Cross-links so you can hop from a command to the concept behind it.

That includes `/feedback` (new), the full `/room invite` subcommand group, typing indicators, reply threading, pins, ratings, and personalization.

### Dark theme to match the main site

The docs site now uses the same visual language as [mocha-bot.xyz](https://mocha-bot.xyz): pure black background, Plus Jakarta Sans, gold accents, glass surfaces, blurred navbar. Dark mode is the only mode — no more accidental light-mode flashes when following links out of the main site.

### Local search

There's a search bar in the navbar now. It indexes every page at build time — no third-party service, no approval process, instant results.

### SEO and sharing

- Per-page Open Graph and Twitter card metadata so shared links render properly in Discord, Slack, and Twitter.
- A site-wide schema.org `WebSite` JSON-LD block plus the automatic `BreadcrumbList` structured data Docusaurus ships.
- A generated sitemap and a `robots.txt` pointing at it.
- A custom 404 page with links to the tutorials, commands reference, and FAQ.

### Under the hood

- Docusaurus v3 (up from v2 RC).
- PWA enabled — you can install the docs as an app.
- CI runs `yarn build` and link-checks every pull request.
- Dependabot watches for updates so nothing rots.

## What's next

If you spot something missing, wrong, or confusing, let us know via the in-bot `/feedback` command or drop a message in the [support server](https://discord.mocha-bot.xyz/). This site is living documentation — the more you tell us where it breaks, the better it gets.
7 changes: 7 additions & 0 deletions blog/authors.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
mocha-team:
name: Mocha Team
title: Mocha Bot maintainers
url: https://mocha-bot.xyz
image_url: /img/logo-mocha.png
socials:
github: mocha-bot
4 changes: 4 additions & 0 deletions docs/chat/messages.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ Editing a message edits its copies in every other channel in the room. There is

After the window expires the original edit will no longer propagate to followers.

:::warning
The window is measured from when the message was originally sent, not when you start editing. If you open the edit dialog just before the window closes and hit save a minute later, Mocha has already forgotten about the message and your change will only affect the original channel.
:::

## Delete Message

Deleting a message deletes every copy of it in the room, under the same time-window rules as editing.
Expand Down
49 changes: 49 additions & 0 deletions docs/commands/bind.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
sidebar_position: 4
title: "/bind — Link Your Discord Account to Mocha"
description: Use /bind to connect your Discord account to your Mocha SSO account, enabling access to the dashboard, subscriptions, and account-gated features.
keywords:
- /bind command
- mocha sso
- link discord account
- mocha account
- discord login
---

# Bind

Link your Discord identity to your Mocha account. Required to access the [dashboard](https://dash.mocha-bot.xyz), manage subscriptions, and use account-gated features.

## Slash Commands

### Bind

Run this in any channel where the bot is present. The response is **ephemeral** — only you see it.

**Usage**

```md
/bind
```

**What you'll see**

An embed titled **Connect Your Account** with two buttons:

| Button | When to use |
| ------ | ----------- |
| **Login / Register** | You don't have a Mocha account yet. Opens the SSO page to create one using Discord OAuth. |
| **Link Discord to Existing Account** | You already have a Mocha account (created with Google or another method) and want to attach your Discord identity to it. |

Both flows redirect back to your dashboard profile page after completion.

## Why bind your account?

- **Dashboard access** — [dash.mocha-bot.xyz](https://dash.mocha-bot.xyz) uses Mocha SSO. Without a linked account you cannot log in.
- **Subscriptions** — plan purchases are tied to your Mocha account. Binding makes sure payments apply to the right profile.
- **Private room gate** — some premium features require the subscribing user to have their Discord account linked.

## See also

- [/subscribe](/commands/subscribe) — view and upgrade your server's plan.
- [Pricing](/web/pricing) — compare plans on the web.
67 changes: 13 additions & 54 deletions docs/commands/feedback.md
Original file line number Diff line number Diff line change
@@ -1,65 +1,24 @@
---
sidebar_position: 3
title: "/feedback — Send Feedback to Mocha Developers"
description: Use the /feedback slash command to send bug reports, suggestions, and feature requests directly to the Mocha developers from any Discord server.
sidebar_position: 5
title: "/feedback — Removed"
description: The /feedback slash command has been removed. Use the Mocha support server or GitHub issues to send feedback.
keywords:
- /feedback command
- mocha bug report
- mocha feature request
- discord bot feedback
- mocha feedback
- mocha support
---

# Feedback

Send feedback to the Mocha maintainers directly from Discord. The command opens a modal form that ends up as a formatted message in the developer channel, tagged with the server and user it came from so we can follow up if needed.
:::caution Removed
The `/feedback` slash command has been removed. It is no longer available in Discord.
:::

## Slash Commands
## How to send feedback now

### Feedback

**Usage**

```md
/feedback
```

**What happens next**

1. Mocha responds with an ephemeral modal titled **Send Feedback**.
2. You fill in two fields.
3. You submit — Mocha replies *"Thank you for your feedback!"* and forwards the details to the developer channel.

## Modal fields

| Field | Required | Limits | Description |
| ---------- | -------- | -------------------- | ------------------------------------------------------------- |
| **Type** | yes | 3–20 characters | One of `bug`, `suggestion`, `feature_request`, `other`. |
| **Feedback** | yes | up to 2000 characters | Free-form description. Be specific — the more context, the better. |

If you type something that isn't one of the four known values for **Type**, Mocha will accept the submission and quietly categorise it as `other`. You don't need to worry about spelling it exactly.

## What the maintainers see

Your submission is posted to the developer channel as an embed containing:

- **Title** — "Received a feedback!"
- **Description** — the body you typed.
- **Color** — tinted by feedback type (bug, suggestion, feature_request, other each have their own color).
- **Author** — your Discord tag and avatar.
- **Type field** — the category.
- **Guild field** — the server name and ID the feedback came from.
- **User field** — your display name and user ID.
- **Timestamp** — when you submitted.

## Writing effective feedback

To help us act on your report quickly:

- **Bugs** — include the command or action you ran, what you expected, what happened, and (if possible) the room ID.
- **Suggestions / feature requests** — describe the problem you're trying to solve, not just the solution you have in mind. We can usually find a better fit for the underlying need.
- **Other** — use this for questions, praise, or anything that doesn't fit the first three. We read all of it.
- **Support server** — join [discord.mocha-bot.xyz](https://discord.mocha-bot.xyz) and post in the appropriate channel.
- **GitHub issues** — open an issue at the Mocha GitHub repository for bug reports and feature requests.

## See also

- [Support server](https://discord.mocha-bot.xyz/) — real-time help from the community.
- [Frequent Searches](/others/frequent-searches) — answers to the most common questions before you reach for `/feedback`.
- [Frequent Searches](/others/frequent-searches) — answers to common problems.
- [Getting Started](/tutorials/getting-started) — setup walkthrough.
36 changes: 36 additions & 0 deletions docs/commands/room.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,3 +132,39 @@ Join a room using an invitation code or alias. The channel must not already be c
```md
room invite join <code>
```

### Tag

Manage topic tags on the current room. See [Room Tags](/rooms/tags) for the full reference.

All tag subcommands require the channel to be connected to a room. `set` and `remove` are **owner-only**.

#### tag list

Show the tags currently assigned to this room.

**Usage**

```md
/room tag list
```

#### tag set

Open a select menu to assign one or more tags to this room. Only the room owner can use this.

**Usage**

```md
/room tag set
```

#### tag remove

Open a select menu to remove one or more assigned tags. Only the room owner can use this.

**Usage**

```md
/room tag remove
```
59 changes: 59 additions & 0 deletions docs/commands/subscribe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
sidebar_position: 3
title: "/subscribe — View and Upgrade Your Server Plan"
description: Use /subscribe to check your server's current plan and active features, and to browse available premium plans with direct checkout links.
keywords:
- /subscribe command
- mocha premium
- mocha plans
- discord bot subscription
- upgrade mocha
---

# Subscribe

Check your server's current plan and browse available premium plans — all without leaving Discord.

## Slash Commands

### Subscribe

Run this in any channel where the bot is present. The response is **ephemeral** — only you see it.

**Usage**

```md
/subscribe
```

**What you'll see**

1. **Current Server Plan** embed — lists every premium feature currently active on your server. If no plan is active the embed describes the Free plan and prompts you to upgrade.
2. **Available Plans** embed (if plans are configured) — shows each active plan with its name, price, and included features.
3. **Subscribe buttons** — one button per plan, each linking directly to that plan's checkout page. If no plans have a checkout URL configured, a generic **View Plans** button links to the dashboard pricing page.

**Active features shown**

| Feature key | Display label |
| -------------------------------- | ------------------------------ |
| `private_room` | Private Rooms |
| `room_invitation` | Room Invitations |
| `room_invitation_alias` | Custom Invitation Aliases |
| `room_invitation_unlimited_option` | Unlimited Invitation Uses |
| `personalization` | Personalized Messages |
| `welcoming` | Welcome Messages |
| `max_channels` | Extended Channel Limit |

Only features that are **active** on your server appear in the embed.

## When to use it

- **Check your plan** — quickly see which features your server has without opening a browser.
- **Upgrade** — hit a feature gate mid-setup and want to subscribe immediately.
- **Share with admins** — because the response is ephemeral you can run it anywhere, then copy the plan link to share with whoever controls billing.

## See also

- [Pricing](/web/pricing) — full plan comparison on the web.
- [Rooms Overview](/rooms/overview) — feature gate reference.
- [Personalization](/rooms/personalization) — one of the premium features unlocked by a plan.
8 changes: 8 additions & 0 deletions docs/donut/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"label": "Donut",
"position": 6,
"link": {
"type": "generated-index",
"description": "Donut is Mocha's community matchmaking feature — automatically pairs members for 1-on-1 or small-group interactions."
}
}
Loading
Loading