news 2026/6/24 9:26:35

Vue 终端开发桌面 vue-tui

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vue 终端开发桌面 vue-tui

JavaScript 写一个像 Claude Code、Gemini CLI 那样的终端应用,绕不开的名字通常是 React Ink

vue-tui 安装运行时

npm install @vue-tui/runtime vue
<script setup lang="ts"> import { shallowRef } from "vue" import { Box, Text, useInput } from "@vue-tui/runtime" const count = shallowRef(0) useInput((input) => { if (input === "+") count.value++ if (input === "-") count.value-- }) </script> <template> <Box> <Text>Count: </Text> <Text bold color="green">{{ count }}</Text> <Text dimColor> (+/- to change)</Text> </Box> </template>

项目同时支持 Vue SFC 和 JSX。喜欢模板语法的开发者可以继续写<template>

vue-tui 使用 Yoga 计算布局,也就是 React Native 和 Ink 背后的 Flexbox 引擎。核心组件<Box>负责方向、对齐、间距、边框和背景,<Text>负责文字样式、截断和换行。

这意味着前端开发者熟悉的flexDirectionjustifyContentalignItems等布局思路,可以继续沿用。

它不是用 CSS 画终端,而是把 Flexbox 的布局模型映射到字符网格。这一步很关键,因为复杂 TUI 真正难维护的部分,通常就是布局系统

vue-tui 0.1 一组偏完整的交互能力:

  • 键盘与焦点管理:支持按键监听、Tab 导航和组件级焦点控制

  • 现代终端输入:支持 Kitty keyboard protocol 和 bracketed paste

  • 动画能力:提供基于帧的动画驱动

  • 窗口响应式:终端尺寸变化后可以重新计算界面

  • 无障碍支持:能够检测屏幕阅读器,并提供线性化输出

  • 组件测试:在隔离的模拟终端中渲染组件、输入按键、逐帧断言结果

@vue-tui/testing。开发者可以渲染组件,模拟用户按下+-或方向键,再检查最后一帧输出是否符合预期

vue-tui 提供了实验性的 CLI,执行vue-tui dev后,可以通过 Vite 驱动终端里的 HMR。修改app.vue,界面会立即更新。

vue-tui 大量参考了 React Ink 的成熟设计,包括组件模型、Yoga 布局、焦点系统和渲染管线。

参考:

Tui

Vue TermUI | The Modern Terminal UI Framework

GitHub - vuejs-ai/vue-tui: The Vue framework for terminal UIs. SFC & JSX, Yoga flexbox, HMR, and testing out of the box. · GitHub

GitHub - Simon-He95/vue-tui: Vue 3 terminal UI toolkit for browser DOM and CLI stdout: components, ANSI rendering, markdown transcripts, log views, and agent consoles. · GitHub

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/24 9:25:26

如何轻松打造本地AI虚拟主播:从零开始的完整互动解决方案

如何轻松打造本地AI虚拟主播&#xff1a;从零开始的完整互动解决方案 【免费下载链接】Neuro A recreation of Neuro-Sama originally created in 7 days. 项目地址: https://gitcode.com/gh_mirrors/neuro6/Neuro 你是否曾幻想过拥有一个能实时对话、智能互动的专属虚拟…

作者头像 李华
网站建设 2026/6/24 9:21:02

紧急预警:OpenWebUI+LMStudio等轻量工具正引发数据泄露高危漏洞!2024最新《AI本地化部署安全合规 checklist》限时公开

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI工具本地化部署的合规风险全景图 AI工具本地化部署虽能提升数据可控性与响应效率&#xff0c;但其背后潜藏的合规风险远超技术实施层面。从数据主权到模型许可、从算法透明度到跨境传输限制&#xff…

作者头像 李华
网站建设 2026/6/24 9:20:16

太原食品级干冰

在现代化的生产与生活中&#xff0c;干冰不再仅仅是舞台上的烟雾缭绕&#xff0c;更是食品保鲜、工业清洗等领域的核心工具。特别是在太原&#xff0c;随着食品加工、冷链物流和精密制造业的快速发展&#xff0c;对高纯度、安全可靠的食品级干冰需求日益增长。本文将从行业痛点…

作者头像 李华
网站建设 2026/6/24 9:15:03

深度解析kohya_ss训练监控:5个关键技术指标与可视化实战指南

深度解析kohya_ss训练监控&#xff1a;5个关键技术指标与可视化实战指南 【免费下载链接】kohya_ss 项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss kohya_ss作为Stable Diffusion模型训练的专业工具&#xff0c;提供了完整的训练监控与可视化解决方案&am…

作者头像 李华
网站建设 2026/6/24 9:10:46

如何让Intel显卡火力全开:MPV播放器硬件加速终极优化指南

如何让Intel显卡火力全开&#xff1a;MPV播放器硬件加速终极优化指南 【免费下载链接】mpv &#x1f3a5; Command line media player 项目地址: https://gitcode.com/GitHub_Trending/mp/mpv 还在为4K/8K视频播放卡顿而烦恼吗&#xff1f;作为一款轻量高效的命令行媒体…

作者头像 李华
网站建设 2026/6/24 9:04:43

【AI】Trae集成Claude Code插件实现自动化编程

Trae编辑器集成Claude Code插件并调用DeepSeek API保姆级教程 一、前言 目前Trae编辑器凭借免费、轻量、智能联动代码工程的优势,成为很多开发者日常编码、项目调试、代码重构的首选工具。但Trae存在一个核心短板:内置AI模型版本固定、能力受限、高级功能需排队,无法使用当…

作者头像 李华