新闻详情

新闻详情

首页 / 资讯中心 / 详情

OpenLess架构揭秘:Rust核心openless-core加Tauri 2与React前端,一套代码横跨macOS、Windows、Android与Linux

发布时间:2026/9/25 17:05:12来源:尧图网络
OpenLess架构揭秘:Rust核心openless-core加Tauri 2与React前端,一套代码横跨macOS、Windows、Android与Linux
OpenLess架构揭秘Rust核心openless-core加Tauri 2与React前端一套代码横跨macOS、Windows、Android与Linux【免费下载链接】openlessHold a key, speak, release — AI-polished text appears at your cursor in any app. Open-source voice input for macOS Windows. (按住快捷键说话松开即得润色后的文字)项目地址: https://gitcode.com/gh_mirrors/op/openlessOpenLess 是一款开源 AI 语音输入工具按住快捷键说话松开后润色好的文字就会出现在光标处可在任意应用中输入。它的架构秘诀是「一套业务核心 多个平台宿主」——Rust 编写的共享内核 openless-core 承载全部业务逻辑Tauri 2 驱动 macOS/Windows/Android 的 React 界面Linux 则用 egui 独立渲染让同一个代码库自然覆盖四端。为什么这样设计一个核心多张面孔跨平台语音输入最难的不是写界面而是业务逻辑的一致性听写会话怎么触发、ASR 结果怎么润色、文字怎么插进目标应用、凭据存在哪里……这些规则如果每个平台各写一份很快就会互相漂移。OpenLess 的解法是把代码切成清晰的层次 层所在位置职责共享核心 Coreopenless-core听写引擎、润色、词库、云同步等全部业务规则桌面/移动宿主src-tauriTauri 2 命令、热键、录音、文字插入、凭据适配React 前端src页面、设置、多语言界面8 种语言Linux 宿主linux-eguiegui/eframe 原生 UI不依赖 Tauri完整分层说明见官方文档 docs/architecture.md。Rust 核心 openless-core不碰 UI 的业务大脑openless-core 是这个项目最巧的一笔。它的 lib.rs 开头就写明了设计原则刻意不依赖 Tauri、WebView、egui 或 eframe。也就是说核心只知道业务不知道界面长什么样。它按业务域组织了 70 个模块随手挑几个 听写链路dictation_engine听写主链、audio录音、silence_auto_stop静音自动停止文本加工polishAI 润色、output_cleaning输出清洗、vocabulary词库服务与凭据provider_registry、credentials凭据合同、cloud_sync私有云同步知识与历史history、style_packs风格包、marketplace市场宿主想接入平台能力通过 Core 定义的 trait 接口ports.rs注入录音、插入、凭据等原生实现想拿到状态变化订阅语义化事件events.rs。这样业务规则缺失修 Core平台能力缺失修 Host责任边界一目了然。另外Core 还维护了一个独立于应用版本的后端合同版本BACKEND_CONTRACT_VERSION配合机器可读的合同文件 contract/backend-2.0.json让前端与后端跨语言协作时不会各说各话。Tauri 2 React桌面与移动端的主力前端macOS、Windows、Android 三端共享同一套 Tauri 2.11 宿主React 前端src/ 下是 TypeScript React 页面通过 src/lib/ipc 的类型化 IPC 门面调用后端命令而不是随手写字符串调用Tauri 命令层src-tauri/src/commands/ 注册命令coordinator.rs 负责构造 Core 并协调窗口、热键、音频等系统能力窗口体系主窗口 悬浮胶囊窗口Siri / Classic / Typeless 三种风格见 tauri.conf.json。Android 端则在 android/ 目录补充了 Kotlin 服务、无障碍与悬浮窗实现前端片段通过 Vite 别名android并入同一个 React 工程——手机上录音中想追问也是同一套核心在处理。Linux 不走 Tauriegui 原生 UI 的独立路线Linux 是个有趣的例外。为了绕开 WebKitGTK 的重量依赖linux-egui 用egui/eframe写了原生界面main.rs 负责 UIbackend.rs 用LinuxBackendBuilder把音频、凭据、本地 ASR 等能力注入 Core全程走类型化 Rust 接口连 IPC 都省了。这正是分层架构的红利Core 不认识 Tauri 也不认识 egui所以换宿主只是换插头业务逻辑一行不用改 。一套代码的回报可移植、可测试、可维护这种结构带来的好处很实在跨端一致同一份听写、润色、云同步逻辑四端行为一致不会出现Windows 上好的macOS 上怪怪的独立验证Core 可以单独跑cargo test -p openless-core前端合同用npm test校验互不干扰扩展容易想加新平台只需写一个新 Host 实现 Core 的 ports 接口即可。结语OpenLess 用Rust 核心 openless-core Tauri 2 React 前端 egui Linux 宿主的组合证明了开源语音输入工具完全可以做到一套代码、四端体验。如果你想深入源码建议按这条主线读docs/architecture.md 看分层 → docs/structure.md 按任务定位文件 → openless-all/app/crates/openless-core/src/lib.rs 看模块全貌。动手前记得克隆仓库后执行git submodule update --init --recursive再按 openless-all/README.md 的指引构建即可 【免费下载链接】openlessHold a key, speak, release — AI-polished text appears at your cursor in any app. Open-source voice input for macOS Windows. (按住快捷键说话松开即得润色后的文字)项目地址: https://gitcode.com/gh_mirrors/op/openless创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Agent技能库设计:从函数调用到工程化技能编排的实践指南 2026/9/25 17:35:43

Agent技能库设计:从函数调用到工程化技能编排的实践指南

我搭建agent-skills这个技能库,最早是因为项目代码里到处重复着给模型拼tool definitions的手写逻辑。当时我们做了好几个智能体应用,表面上是对话、搜索、下单这些能力,背后真正干活的却是一堆散落在各个文件里的函数。每次新增一个功能&…

阅读更多 →
PaddleSpeech 实战:基于 CSMSC 数据集从零训练 SpeedySpeech 中文语音合成声学模型 2026/9/25 17:35:36

PaddleSpeech 实战:基于 CSMSC 数据集从零训练 SpeedySpeech 中文语音合成声学模型

人工智能语音音频 【免费下载链接】PaddleSpeech Easy-to-use Speech Toolkit including Self-Supervised Learning model, SOTA/Streaming ASR with punctuation, Streaming TTS with text frontend, Speaker Verification System, End-to-End Speech Translation and Keyword…

阅读更多 →
学生积分管理系统开发:用账务系统思路实现流水审计与对账 2026/9/25 17:35:36

学生积分管理系统开发:用账务系统思路实现流水审计与对账

简介:学院学生积分管理系统是一套面向学院学生管理部门设计的完整工程包,用于将课堂出勤、作业完成、考试成绩、竞赛获奖等行为量化记录并自动计算积分,减少手工登记与统计误差。压缩包共364个文件,大小约1.83MB,包含1…

阅读更多 →
OpenVINO 完整指南:让深度学习模型在 Intel CPU、GPU、NPU 上一步跑起来 2026/9/25 17:35:30

OpenVINO 完整指南:让深度学习模型在 Intel CPU、GPU、NPU 上一步跑起来

OpenVINO 完整指南:让深度学习模型在 Intel CPU、GPU、NPU 上一步跑起来 【免费下载链接】openvino OpenVINO™ is an open source toolkit for optimizing and deploying AI inference 项目地址: https://gitcode.com/GitHub_Trending/op/openvino OpenVINO…

阅读更多 →
Atlas 300V 24G推理加速卡上高效部署YOLOv8完整指南 2026/9/25 17:35:17

Atlas 300V 24G推理加速卡上高效部署YOLOv8完整指南

提示:本文基于个人实际部署记录整理,文中涉及的版本号、命令和参数以你拿到手的硬件和CANN版本为准。被问到“Atlas 300V 24G 是运算加速卡吗”的时候,我手里刚好在折腾这块卡上部署YOLO的事。这个问题看着简单,但要是只回答“是”…

阅读更多 →
深度解析 Anthropic Skills:用 SKILL.md 为 Claude Code 定制技能扩展 2026/9/25 17:35:17

深度解析 Anthropic Skills:用 SKILL.md 为 Claude Code 定制技能扩展

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉