GitHub

Dashboard Guide

The Diskus Admin Dashboard is a powerful, centralized control center that allows you to manage multiple websites, moderate comments, and configure your comment system settings.

Multi-Tenancy (Websites)

Diskus is built with a multi-tenant architecture. This means a single deployment of the backend API can serve comments for multiple different websites, domains, or projects simultaneously.

Registering a Website

To begin using Diskus on a new website, navigate to the Websites tab and click “Add Website”.

  • Enter your domain (e.g., yourblog.com).
  • Diskus will generate a unique App ID (Public API Key) for this domain.
  • You must use this App ID in the HTML embed snippet on your site.

Site Settings

Click the settings (gear) icon on any registered website to configure its specific behavior:

  • Authentication Mode: Toggle between allowing guest comments (with just a name and email) or requiring users to create a verified account to comment.
  • Social Logins: Enable or disable third-party OAuth providers (Google, GitHub) for users to seamlessly log in.
  • Email Notifications: Toggle whether you receive an email alert when a new comment is posted on this site.
  • Moderation Mode: If enabled, all new comments are placed in the “Pending” queue and hidden from the public until you manually approve them.
  • Comments Limit: Controls how many root-level comments are loaded initially before the user has to click “Load more”.

Moderation Workflow

The Comments tab is where you will spend most of your time. It provides a hierarchical view of all conversations.

Status Queues

Comments flow through different status queues:

  1. Pending: Comments awaiting your approval (if Moderation Mode is enabled).
  2. Approved: Comments currently visible on the public widget.
  3. Spam: Comments flagged manually by you, or caught by the automated honeypot.
  4. Trash: Soft-deleted comments.

Actions

You can perform actions on individual comments via the context menu (3 dots) or select multiple comments for Bulk Actions:

  • Approve: Makes the comment publicly visible.
  • Mark as Spam: Moves the comment to the spam queue.
  • Move to Trash: Removes the comment from the public view.
  • Delete Forever: Only available in the Trash queue. This performs a hard database delete. Warning: Deleting a parent comment will recursively delete all its replies.
  • Pin Comment: You can pin an excellent comment to the top of the thread. It will receive a special badge and remain at the top regardless of sorting.

Data Management

You own your data. Diskus makes it easy to migrate your data in and out of the system.

Navigate to the Settings tab and scroll to Data Management:

  • Export: Downloads all threads and comments for the currently selected site as a highly portable JSON file.
  • Import: Upload a JSON file to restore comments. Diskus uses a smart deduplication algorithm to prevent importing duplicate comments if they already exist in the database. Imported HTML content is automatically re-sanitized for security.
  • Import from Disqus: Upload your Disqus XML export file to migrate your existing threads and comments seamlessly. Diskus handles thread mapping, nested replies, and graceful fallback for author information.

User Management

If you are the primary server administrator, you have access to the Users tab. This interface allows you to view and manage all users who have registered accounts via the public comment widget across all your sites. You can permanently delete malicious users from this interface.

Admin Troubleshooting

Resetting Admin Password (CLI)

If you are locked out of the dashboard, you can reset your password securely via the command line. This requires direct access to your server’s terminal.

  1. Navigate to either the root or the backend directory of your Diskus installation.
  2. Run the reset-password script with your email address:
    bun run reset-password admin@example.com
  3. Follow the on-screen prompt to confirm. The system will generate a secure temporary password and print it to the terminal.
  4. Please log in immediately and change this temporary password from the Dashboard settings.