Skip to content

xxxxzb/type-bridge-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TypeBridge ⌨️

Rust 1.75+ License MIT Platform

用手机浏览器通过 Wi-Fi 在电脑上打字。无需安装 App,无需蓝牙 — 打开网页就能打。支持任何手机输入法,包括语音输入。

一个自托管的远程键盘,把手机浏览器变成 PC 的无线键盘。完全在局域网内运行 — 无需账号、无需云端、手机端零安装。

基于 Hacker-Shohan/TypeBridge 用 Rust 重写。


为什么用 TypeBridge?

想从房间另一头往电脑打字时,大多数人会选择蓝牙键盘或投屏 App。TypeBridge 跳过了这一切:电脑上跑一个轻量服务,手机打开一个网址,手机就变成了无线键盘。就这么简单。

很适合:

  • 用手机滑动输入法在电脑上写长文
  • 用手机自带的语音输入往任何 PC 应用里听写
  • 控制接在电视或投影上的电脑
  • 任何不想掏实体键盘的场合

原理

手机浏览器 ──WiFi──▶ TypeBridge (axum HTTP + Bearer token) ──▶ enigo + arboard ──▶ PC 当前焦点应用
  1. 在电脑上运行 type-bridge-rs
  2. 手机上打开终端打印的 URL(手机和电脑需在同一 Wi-Fi)
  3. 在手机文本框里打字
  4. Send to PC — 文字会粘贴到电脑当前激活的窗口中

安装

从源码编译

git clone <repo-url>
cd type-bridge-rs
cargo build --release

编译好的二进制文件在 target/release/type-bridge-rs

依赖

编译需要 Rust 工具链(1.75+)。运行时无需外部依赖。

Crate 用途
axum HTTP 服务器 + 路由
enigo 跨平台键盘模拟
arboard 剪贴板读写(处理所有 Unicode)
tray-icon 系统托盘图标
muda 托盘菜单
clap 命令行参数
tokio 异步运行时
qrcode 二维码生成
winit + softbuffer 二维码窗口渲染
tower HTTP 中间件(dev-dependency,仅测试用)

使用

# 默认端口 12345
type-bridge-rs

# 自定义端口
type-bridge-rs --port 8080

# 查看版本
type-bridge-rs --version

输出:

⌨️  TypeBridge running!
📱 Open on your phone: http://192.168.1.42:12345

手机打开这个 URL,然后在电脑上点进任意应用,在手机上打字点发送即可。


按钮

按钮 功能
Send to PC 把手机文本框里的所有内容发送到 PC,然后清空手机文本框
Backspace 删除 PC 光标前的一个字符(普通 Backspace,不含修饰键)
Enter 发送回车键到 PC
Clear text (本地) 仅清空手机文本框,不发送任何 HTTP 请求
Clear PC field (远程) 全选并删除 PC 当前输入区域的所有内容(危险操作,视觉上已区分)

提示: 在手机文本框中使用 Enter 键输入换行符。点击下方的 Enter 按钮向 PC 发送回车键。


系统托盘

运行后任务栏会出现图标。右键可暂停/恢复输入或退出。

  • 绿色图标:输入开启
  • 红色图标:已暂停

平台支持

平台 状态
macOS 完全支持(首次运行需授权辅助功能权限)
Windows 完全支持
Linux 支持(X11/Wayland,Wayland 需 wl-clipboard

macOS 辅助功能权限

首次运行时系统会弹出权限请求。去 系统设置 → 隐私与安全性 → 辅助功能,勾选你的终端即可。


与 Python 原版的区别

TypeBridge 是 TypeBridge 的 Rust 重写版,主要改进:

  • 剪贴板恢复 — 粘贴后自动还原剪贴板原有内容
  • 异步 I/O — tokio 驱动的 HTTP 服务器,更低的资源占用
  • 单文件二进制 — 编译后零依赖,复制即用
  • 结构化日志 — tracing 框架,便于排查问题
  • 优雅关闭 — 收到退出信号后平滑停止 HTTP 服务器
  • 纯 HTTP API — 无状态请求/响应模型,比长连接协议更简单,更好的安全边界
  • Bearer Token 鉴权 — 不使用 cookie,降低 CSRF 攻击面

Windows 防火墙

如果手机连不上,放行端口:

Windows Defender 防火墙 → 高级设置
→ 入站规则 → 新建规则 → 端口 → TCP → 12345 → 允许

FAQ

支持语音输入吗? 支持。开启手机输入法的语音输入正常使用即可 — TypeBridge 不管文字是怎么进到文本框里的。

文字会传到互联网上吗? 不会。所有数据只在你家局域网内传输,不经过路由器之外。

支持什么手机浏览器? 任意现代浏览器 — Chrome、Safari、Firefox、三星浏览器。

能在没有网络的环境用吗? 需要电脑和手机连同一个 Wi-Fi。可以开手机热点让电脑连。

About

⌨️ 用手机浏览器通过 Wi-Fi 在电脑上打字 — 无需 App、无需蓝牙,打开网页就能打。支持任意手机输入法(含语音输入)。Rust 重写版。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors