MCPcopy Index your code
hub / github.com/MirrorX-Desktop/MirrorX

github.com/MirrorX-Desktop/MirrorX @v0.1.5

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.1.5 ↗ · + Follow
498 symbols 847 edges 161 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<a href="https://github.com/MirrorX-Desktop/MirrorX"><img width="128" src="https://raw.githubusercontent.com/MirrorX-Desktop/MirrorX/master/mirrorx/src-tauri/assets/icons/icon.png"></a>

MirrorX

<a href="https://github.com/MirrorX-Desktop/MirrorX/blob/master/README.md">English</a>
<a href="https://github.com/MirrorX-Desktop/MirrorX/blob/master/README_CN.md">简体中文</a>

OPEN

MirrorX is an open-source remote desktop solution, designed for enterprises, teams and individuals.

SECURE

Everything is under your control, allows you to deploy on-prem and/or in the cloud, and also supports end-to-end encryption.

HIGH-PERFORMANCE

GPU acceleration, 4K resolution, 60 FPS... make you feel like a "local desktop".

Features like video and audio passthrough, file transfer, cross-platform, mobile devices support and so on, are really essential, and more features are coming to blow your mind.

Note: MirrorX is in the early stage of development, please be aware of that backward compatibility is not guaranteed.

Component

Free Public Servers

The servers are contributed by the community, please do not abuse it.

Location Specification
Seoul 1vCPU & 1G RAM

Available Platform

  • [x] macOS
  • [x] Windows
  • [ ] Linux (WIP)
  • [ ] Android (WIP)
  • [ ] iOS (WIP)
  • [ ] Web (WIP)

How to build

Prerequisite

  1. Install nodejs && yarn(v3).
  2. Install tauri-cli.
cargo install tauri-cli

Steps

  1. Download pre built media libraries artifacts from MirrorX-Desktop/media_libraries_auto_build Release.
  2. Unzip artifacts to anywhere you'd like to put in.
  3. Add unzipped artifacts path to your Environment Variables

  4. For MacOS

    console $ export MIRRORX_MEDIA_LIBS_PATH=your artifacts unzip destination path

  5. For Windows (run As Administrator) PowerShell PS > [Environment]::SetEnvironmentVariable('MIRRORX_MEDIA_LIBS_PATH', 'your artifacts unzip destination path' , 'Machine')

  6. Run as Debug Mode

cargo tauri dev

About Pre Built Media Libraries

To speed up the build process, we made MirrorX-Desktop/media_libraries_auto_build to automatically and transparently build external libraries. Includes FFmpeg, libx264(Windows, MacOS), libx265(Windows, MacOS), libopus(Windows, MacOS) and MFXDispatch(Windows only). For more details, you can look through Workflows on MirrorX-Desktop/media_libraries_auto_build.

Of course, you can completely built those libraries by yourself according to our Workflows.

Screenshot

Thanks

Thanks these awesome open source projects that make MirrorX becomes true.

(listed partial with in no particular order, thanks all the authors of dependencies in Cargo.toml and package.json)

  1. Rust
  2. Tokio
  3. FFMPEG
  4. serde
  5. ring
  6. egui
  7. windows-rs
  8. sveltekit
  9. daisyUI
  10. tailwindcss
  11. ShiftMediaProject

Extension points exported contracts — how you extend this code

EncoderConfig (Interface)
(no doc) [3 implementers]
mirrorx_core/src/component/video_encoder/config/mod.rs
UpdateLanguageEvent (Interface)
(no doc)
mirrorx/src/components/rust_event.ts
NotificationEvent (Interface)
(no doc)
mirrorx/src/components/notification.ts
Domain (Interface)
(no doc)
mirrorx/src/components/types.ts
LanDiscoverNode (Interface)
(no doc)
mirrorx/src/components/types.ts
HistoryRecord (Interface)
(no doc)
mirrorx/src/components/types.ts

Core symbols most depended-on inside this repo

get
called by 52
mirrorx_core/src/api/config/entity/kv.rs
send
called by 36
mirrorx_core/src/api/endpoint/client/mod.rs
into
called by 21
mirrorx_core/src/api/endpoint/message.rs
FFERRTAG
called by 15
mirrorx_native/src/ffmpeg/avutil/macros.rs
domain
called by 15
mirrorx_core/src/api/config/mod.rs
bincode_serialize
called by 11
mirrorx_core/src/utility/bincode.rs
set_codec_ctx_option
called by 8
mirrorx_core/src/component/video_encoder/config/mod.rs
blocking_send
called by 7
mirrorx_core/src/api/endpoint/client/mod.rs

Shape

Function 205
Method 146
Class 107
Enum 31
Interface 9

Languages

Rust88%
TypeScript12%

Modules by API surface

mirrorx/src/components/command.ts30 symbols
mirrorx_core/src/api/endpoint/message.rs27 symbols
mirrorx_core/src/api/config/entity/domain.rs18 symbols
mirrorx_core/src/component/desktop/windows/duplicator.rs17 symbols
mirrorx/src-tauri/src/command/config.rs17 symbols
mirrorx_core/src/api/endpoint/client/mod.rs14 symbols
mirrorx_core/src/api/config/entity/kv.rs12 symbols
mirrorx_core/src/component/lan/discover.rs11 symbols
mirrorx_core/src/component/input/windows/mod.rs11 symbols
mirrorx_core/src/component/desktop/monitor/macos.rs11 symbols
mirrorx_core/src/component/input/macos/mod.rs10 symbols
mirrorx_core/src/component/fs/macos.rs10 symbols

For agents

$ claude mcp add MirrorX \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page