No description
  • Vue 63.8%
  • TypeScript 34.9%
  • CSS 1%
  • JavaScript 0.2%
Find a file
dependabot[bot] 05807e148c
build(deps): bump the all-npm-dependencies group with 10 updates (#1985)
Bumps the all-npm-dependencies group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [@tanstack/vue-query](https://github.com/TanStack/query/tree/HEAD/packages/vue-query) | `5.100.10` | `5.100.11` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.7.0` | `25.9.1` |
| [daisyui](https://github.com/saadeghi/daisyui/tree/HEAD/packages/daisyui) | `5.5.19` | `5.5.20` |
| [eslint](https://github.com/eslint/eslint) | `10.3.0` | `10.4.0` |
| [lint-staged](https://github.com/lint-staged/lint-staged) | `17.0.4` | `17.0.5` |
| [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt) | `4.4.5` | `4.4.6` |
| [tsx](https://github.com/privatenumber/tsx) | `4.21.0` | `4.22.3` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.12` | `8.0.13` |
| [vue-router](https://github.com/vuejs/router) | `5.0.6` | `5.0.7` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.2.8` | `3.3.1` |


Updates `@tanstack/vue-query` from 5.100.10 to 5.100.11
- [Release notes](https://github.com/TanStack/query/releases)
- [Changelog](https://github.com/TanStack/query/blob/main/packages/vue-query/CHANGELOG.md)
- [Commits](https://github.com/TanStack/query/commits/@tanstack/vue-query@5.100.11/packages/vue-query)

Updates `@types/node` from 25.7.0 to 25.9.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `daisyui` from 5.5.19 to 5.5.20
- [Release notes](https://github.com/saadeghi/daisyui/releases)
- [Changelog](https://github.com/saadeghi/daisyui/blob/master/CHANGELOG.md)
- [Commits](https://github.com/saadeghi/daisyui/commits/v5.5.20/packages/daisyui)

Updates `eslint` from 10.3.0 to 10.4.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v10.3.0...v10.4.0)

Updates `lint-staged` from 17.0.4 to 17.0.5
- [Release notes](https://github.com/lint-staged/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md)
- [Commits](https://github.com/lint-staged/lint-staged/compare/v17.0.4...v17.0.5)

Updates `nuxt` from 4.4.5 to 4.4.6
- [Release notes](https://github.com/nuxt/nuxt/releases)
- [Commits](https://github.com/nuxt/nuxt/commits/v4.4.6/packages/nuxt)

Updates `tsx` from 4.21.0 to 4.22.3
- [Release notes](https://github.com/privatenumber/tsx/releases)
- [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs)
- [Commits](https://github.com/privatenumber/tsx/compare/v4.21.0...v4.22.3)

Updates `vite` from 8.0.12 to 8.0.13
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.13/packages/vite)

Updates `vue-router` from 5.0.6 to 5.0.7
- [Release notes](https://github.com/vuejs/router/releases)
- [Commits](https://github.com/vuejs/router/compare/v5.0.6...v5.0.7)

Updates `vue-tsc` from 3.2.8 to 3.3.1
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.1/packages/tsc)

---
updated-dependencies:
- dependency-name: "@tanstack/vue-query"
  dependency-version: 5.100.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: "@types/node"
  dependency-version: 25.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-npm-dependencies
- dependency-name: daisyui
  dependency-version: 5.5.20
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: eslint
  dependency-version: 10.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-npm-dependencies
- dependency-name: lint-staged
  dependency-version: 17.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: nuxt
  dependency-version: 4.4.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: tsx
  dependency-version: 4.22.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-npm-dependencies
- dependency-name: vite
  dependency-version: 8.0.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: vue-router
  dependency-version: 5.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-npm-dependencies
- dependency-name: vue-tsc
  dependency-version: 3.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-npm-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-20 14:27:03 +08:00
.github build(deps): bump googleapis/release-please-action from 4 to 5 (#1957) 2026-04-24 21:42:42 +08:00
.husky feat: bun -> pnpm 2024-04-08 17:34:57 +08:00
.vscode feat: update project configuration and enhance components 2025-12-11 15:00:01 +08:00
__tests__ fix: avoid rewriting docker config asset 2026-05-03 22:39:07 +08:00
assets feat(ui): introduce motion design system 2026-05-09 19:20:57 +08:00
components fix: stabilize latency testing state 2026-05-20 01:18:28 +08:00
composables fix: stabilize latency testing state 2026-05-20 01:18:28 +08:00
constants test(connections): align describe titles with project lowercase convention 2026-05-09 16:47:30 +08:00
docs chore: update screenshots for v1.248.1 [skip ci] 2026-05-19 17:25:23 +00:00
e2e chore: improve quality checks and remove spec artifacts 2026-04-27 00:32:24 +08:00
i18n/locales feat(proxies): allow manual latency color thresholds 2026-05-18 15:14:06 +08:00
layouts style: fix ESLint warnings and remove unused code 2026-04-22 01:07:06 +08:00
middleware chore: migrate to nuxt (#1777) 2025-12-11 13:20:34 +08:00
pages feat(proxies): allow manual latency color thresholds 2026-05-18 15:14:06 +08:00
plugins fix: correct logic bugs and improve error handling 2026-04-22 01:07:27 +08:00
public feat: Support setting default backend URL via environment variable (#1733) 2025-11-27 10:22:11 +08:00
scripts fix: update e2e tests and screenshot selectors for new UI 2026-01-25 14:01:36 +08:00
stores fix: stabilize latency testing state 2026-05-20 01:18:28 +08:00
test chore: improve quality checks and remove spec artifacts 2026-04-27 00:32:24 +08:00
types feat(traffic): improve data usage analytics (#1959) 2026-04-30 15:46:09 +08:00
utils feat(proxies): allow manual latency color thresholds 2026-05-18 15:14:06 +08:00
.commitlintrc.yml chore: migrate to nuxt (#1777) 2025-12-11 13:20:34 +08:00
.dockerignore feat: publish docker image 2023-08-30 00:40:47 +08:00
.gitignore feat(test): add comprehensive unit test coverage for stores, composables, and utils 2026-02-03 09:14:47 +08:00
.lintstagedrc.yml feat: integrate Floating UI for tooltips in Versions component 2025-12-11 15:29:29 +08:00
.node-version chore: migrate to nuxt (#1777) 2025-12-11 13:20:34 +08:00
.prettierignore fix(pwa): items in includeAssets cannot be empty string 2024-10-10 19:25:08 +08:00
.prettierrc feat: update project configuration and enhance components 2025-12-11 15:00:01 +08:00
app.vue feat(ui): introduce motion design system 2026-05-09 19:20:57 +08:00
CHANGELOG.md chore(main): release 1.248.1 (#1984) 2026-05-20 01:21:03 +08:00
docker-entrypoint.sh fix: avoid rewriting docker config asset 2026-05-03 22:39:07 +08:00
Dockerfile fix: build docker image on native builder platform 2026-04-30 17:13:04 +08:00
eslint.config.mjs fix: improve UI components and fix various issues 2026-01-25 13:41:35 +08:00
LICENSE docs: add MIT license 2023-08-28 00:13:00 +08:00
nuxt.config.ts fix: disable app manifest for browser compat and show endpoint errors (#1891, #1859) 2026-04-01 02:08:08 +08:00
package.json build(deps): bump the all-npm-dependencies group with 10 updates (#1985) 2026-05-20 14:27:03 +08:00
pnpm-lock.yaml build(deps): bump the all-npm-dependencies group with 10 updates (#1985) 2026-05-20 14:27:03 +08:00
pnpm-workspace.yaml feat: integrate Floating UI for tooltips in Versions component 2025-12-11 15:29:29 +08:00
README.md chore: migrate to nuxt (#1777) 2025-12-11 13:20:34 +08:00
tsconfig.json chore: migrate to nuxt (#1777) 2025-12-11 13:20:34 +08:00
vitest.config.ts feat(test): add comprehensive unit test coverage for stores, composables, and utils 2026-02-03 09:14:47 +08:00

metacubexd

Mihomo Dashboard, The Official One, XD

pr-closed last-commit build downloads license

Features

  • 📊 Real-time traffic monitoring and statistics
  • 🔄 Proxy group management with latency testing
  • 📡 Connection tracking and management
  • 📋 Rule viewer with search functionality
  • 📝 Live log streaming
  • 🎨 Beautiful UI with light/dark theme support
  • 📱 Fully responsive design for mobile devices
  • 🌐 Multi-language support (English, 中文, Русский)

🖼️ Preview

Desktop Screenshots
Overview Proxies
overview proxies
Connections Rules
connections rules
Logs Config
logs config
Mobile Screenshots
Overview Proxies Connections
overview proxies connections
Rules Logs Config
rules logs config
Platform URL
GitHub Pages https://metacubex.github.io/metacubexd
Cloudflare Pages https://metacubexd.pages.dev

🚀 Quick Start

Prerequisites

Enable external-controller in your mihomo config:

external-controller: 0.0.0.0:9090

Option 1: Use Pre-built Assets

# Clone the gh-pages branch
git clone https://github.com/metacubex/metacubexd.git -b gh-pages /etc/mihomo/ui

# Set external-ui in your config
# external-ui: /etc/mihomo/ui

# Update to latest version
git -C /etc/mihomo/ui pull -r

Option 2: Docker

# Basic usage
docker run -d --restart always -p 80:80 --name metacubexd ghcr.io/metacubex/metacubexd

# With custom default backend URL
docker run -d --restart always -p 80:80 --name metacubexd \
  -e DEFAULT_BACKEND_URL=http://192.168.1.1:9090 \
  ghcr.io/metacubex/metacubexd

# Update
docker pull ghcr.io/metacubex/metacubexd && docker restart metacubexd
Docker Compose
services:
  metacubexd:
    container_name: metacubexd
    image: ghcr.io/metacubex/metacubexd
    restart: always
    ports:
      - '80:80'
    # environment:
    #   - DEFAULT_BACKEND_URL=http://192.168.1.1:9090

  # Optional: mihomo instance
  mihomo:
    container_name: mihomo
    image: docker.io/metacubex/mihomo:Alpha
    restart: always
    pid: host
    network_mode: host
    cap_add:
      - ALL
    volumes:
      - ./config.yaml:/root/.config/mihomo/config.yaml
      - /dev/net/tun:/dev/net/tun
docker compose up -d

# Update
docker compose pull && docker compose up -d

Option 3: Build from Source

# Install dependencies
pnpm install

# Build for static hosting (gh-pages, etc.)
pnpm generate

# Preview
pnpm preview

🛠️ Development

# Start dev server
pnpm dev

# Start dev server with mock data
pnpm dev:mock

# Lint & Format
pnpm lint
pnpm format

📄 License

MIT

🙏 Credits

  • Nuxt - The Intuitive Vue Framework
  • Vue.js - The Progressive JavaScript Framework
  • daisyUI - Tailwind CSS components
  • Tailwind CSS - Utility-first CSS framework