Features
Secure Authentication
| Feature | Details |
|---|---|
| Session storage | JWT token stored in an encrypted HTTP-only cookie (distats_session) |
| Password hashing | Node.js scrypt with random salt per user |
| Route protection | Next.js middleware blocks all /dashboard/** routes without a valid session |
| Login redirect | Unauthenticated users are automatically sent to the login page |
| Auth redirect | Already-authenticated users visiting the login page are sent to the dashboard |
Bot Overview
The main dashboard page gives you an at-a-glance view of your bot's health:
| Metric | Description |
|---|---|
| Servers | Total number of servers your bot is in, with animated count-up |
| Members | Total unique members across all servers, with animated count-up |
| Latency | Real-time WebSocket ping in milliseconds |
| Bot Avatar & Username | Pulled live from the Discord API |
| Bot ID | Your bot's unique Discord application ID |
| Invite Bot | One-click link to invite your bot to a new server (with Administrator permissions pre-configured) |
| Top Servers | A quick-view table of your largest servers |
Bot Servers
A full paginated table of every server your bot is in:
- Search servers by name or server ID in real-time
- Sort ascending or descending by member count
- Pagination with 8 servers per page and smart ellipsis navigation
- Server Insights Sheet — click "Insights" on any server to open a slide-over panel displaying:
- Server banner & icon
- Server name, description, and verification badge (if applicable)
- Member count, online members, and boost count
- Boost Tier badge
- Owner's avatar, display name, and username
- Server ID (with one-click copy)
- Server creation date (decoded from the Discord snowflake ID)
- Vanity invite URL with a direct "Join Server" button (if available)
Bot Users
A dedicated section to browse and inspect users that interact with your Discord bot.
Admin Panel
- Admin Users section to view and manage panel administrator accounts
- All admin accounts are stored locally in SQLite — no external service required
The Admin section is itself protected by the same JWT middleware as the rest of the dashboard. Only authenticated users can access it.
Local SQLite Database
- All user data is stored in
@distats_panel/database.sqlite - No MongoDB, no Atlas, no cloud dependency
- The database is initialized automatically on first run by the CLI tool
Premium Dark UI
Built from the ground up with a modern, premium aesthetic:
- Glassmorphism cards with
backdrop-blurand subtle gradient borders - Animated count-up numbers on the overview stats
- Smooth transitions and hover micro-animations on every interactive element
- Animated skeleton loaders while data is being fetched
- Breadcrumb navigation on every page
- Fully responsive layout