首页/新闻资讯/正文详情

如何在3分钟内给React项目嵌入Web终端:wterm快速上手教程

发布时间:2026/9/27 0:11:24 来源:云帆数科 栏目:资讯中心
如何在3分钟内给React项目嵌入Web终端:wterm快速上手教程
如何在3分钟内给React项目嵌入Web终端wterm快速上手教程【免费下载链接】wtermA terminal emulator for the web项目地址: https://gitcode.com/gh_mirrors/wterm1/wtermwterm 是一款面向浏览器的 Web 终端模拟器terminal emulator for the web核心用 Zig 编写并编译为约 26 KB 的 WASM配合 React 组件可在几分钟内给任意 React 项目加上一个支持文本选择、复制粘贴、24 位颜色与主题切换的完整终端。本文将带你走通安装、接入和输入控制的完整流程零后端即可先跑起来。wterm 是什么为什么值得用与传统基于 Canvas 的方案不同wterm 直接渲染到 DOM带来几个天然优势️原生交互文字选择、复制粘贴、浏览器查找、读屏器无障碍直接可用高性能Zig WASM 核心脏行追踪dirty-row tracking只重绘变化的行内置主题Default、Solarized Dark、Monokai、Light支持 CSS 变量自定义多框架绑定官方提供 React、Vue 3、Svelte 组件完整 VT 支持VT100/VT220/xterm 转义序列、OSC 8 超链接、宽字符CJK/emoji、备用屏幕vim、htop 等 TUI 程序可正常工作各包职责一目了然完整说明见 README.md包名用途wterm/core无头 WASM 桥接 WebSocket 传输wterm/domDOM 渲染器原生 JS 终端wterm/reactReact 组件 useTerminalhookwterm/just-bash纯浏览器内运行的 Bash 壳第 1 步安装 React 终端依赖约 30 秒在 React 项目根目录执行npm install wterm/dom wterm/react 如果项目是 Next.js记得在next.config.mjs中把两个包加入transpilePackages原因见下文Next.js 项目额外配置。WASM 二进制已内嵌在包里无需任何额外配置即可运行。第 2 步3 行代码渲染终端导入Terminal组件和样式表放入页面即可import { Terminal } from wterm/react; import wterm/react/css; function App() { return Terminal /; }刷新页面一个 80×24 的终端就出现了。此时直接敲键盘输入会原样回显到终端echo 模式。完整最小示例可参考官方文档 react.mdx 与 get-started.mdx。第 3 步接管键盘输入onData 实战真正连接后端或脚本时需要用useTerminalhook 接管输入。官方 React 包 README 给出的标准写法import { Terminal, useTerminal } from wterm/react; import wterm/react/css; function App() { const { ref, write } useTerminal(); return ( Terminal ref{ref} onData{(data) { socket.send(data); // 把键盘输入发给你的 WebSocket 后端 }} / ); }useTerminal返回的四个成员覆盖了几乎所有控制场景详见 README成员作用ref传给Terminal ref{ref}write(data)向终端写入内容字符串或二进制resize(cols, rows)调整终端尺寸focus()聚焦终端常用配置速查Terminal支持的关键 Props完整表格见 react.mdxProp默认值说明cols/rows80 / 24初始行列数theme—solarized-dark、monokai、lightautoResizefalse跟随容器自动调整尺寸wasmUrl—改为独立静态文件加载 WASM利于 CDN 缓存onData回显处理输入不传则自动 echoonTitle/onBell/onResize/onReady—标题、响铃、尺寸、就绪回调切换主题只需一行Terminal thememonokai /。自定义主题通过 CSS 变量--term-fg、--term-bg、--term-color-0--term-color-15实现。Next.js 项目额外配置Next.js 需要在配置中声明两个包否则构建会报 ESM 相关错误// next.config.mjs const nextConfig { transpilePackages: [wterm/dom, wterm/react], };零后端体验搭配 just-bash想让终端真的能执行命令而不用写一行服务端代码wterm/just-bash提供一个完全跑在浏览器里的 Bash 壳。官方 Next.js 示例的接线逻辑非常简洁源码见 page.tsxconst shell new BashShell({ greeting: [Hello from wterm!] }); shell.attach(write); // 输出 → 终端 // Terminal onData{(data) shell.handleInput(data)} / 输入 → 壳支持ls、cat等命令、CtrlR 历史搜索、Tab 补全。想本地跑起官方演示git clone https://gitcode.com/gh_mirrors/wterm1/wterm cd wterm pnpm install zig build pnpm --filter nextjs dev进阶方向完成 3 分钟接入后可以按需求继续扩展连接真实 PTY用wterm/core的 WebSocket 传输对接服务端 PTY实现 SSH 远程终端参考示例 examples/ssh/README.md满血 VT 兼容换用wterm/ghostty内核支持 Kitty 图像协议、组合字符等高级特性ghostty 文档终端里渲染 Markdownwterm/markdown包API 全量参考api-reference.mdx、configuration.mdxwterm 以极小的 WASM 体积换来了接近原生终端的能力无论是做 IDE 内嵌终端、AI 聊天命令行还是教学演示都是一个轻量又完整的选择。【免费下载链接】wtermA terminal emulator for the web项目地址: https://gitcode.com/gh_mirrors/wterm1/wterm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

3个实战案例告诉你中企动力企业z云邮登陆为何总卡壳
3个实战案例告诉你中企动力企业z云邮登陆为何总卡壳

3个实战案例告诉你中企动力企业z云邮登陆为何总卡壳 网站做好了没人访问,这是90%企业建站老板最头疼的事。但很多老板没意识到, 内部沟通工具的低效才是流量转化的隐形杀手… · 2026/9/27 0:11:24

一文搞懂网站建设客户需求分析表如何避坑
一文搞懂网站建设客户需求分析表如何避坑

一文搞懂网站建设客户需求分析表如何避坑 网站做好了没人访问,这是很多甲方老板最崩溃的时刻。钱花了,工期拖了,上线后流量却是零。别急着骂程序员,问题往往出在最初的需求对接上。… · 2026/9/27 0:11:05

3套网站内容建设方案对比评测:告别备案迷雾
3套网站内容建设方案对比评测:告别备案迷雾

3套网站内容建设方案对比评测:告别备案迷雾 备案流程一头雾水?别慌,这不仅是你的痛点,更是90%初创团队上线前的最大拦路虎。很多开发者把精力全砸在代码逻辑上,结果卡在工信部提交审核那一步,眼睁睁看着竞品抢跑。… · 2026/9/27 0:10:58

Ax调度深度解析:从802.11ax协议原理到Wi-Fi 6排障实践
Ax调度深度解析:从802.11ax协议原理到Wi-Fi 6排障实践

你说的“ax调度”,如果放到无线网络圈子里,第一反应就是 802.11ax,也就是大家更熟悉的 Wi-Fi 6。我最初接触这个词,是在一次办公室无线网络改造的项目里——明明终端都支持 Wi-Fi 6,路由器也换了支持 802.11ax 的企业级… · 2026/9/27 0:57:34

万网域名解析地址详解:新手入门避坑指南
万网域名解析地址详解:新手入门避坑指南

万网域名解析地址详解:新手入门避坑指南 刚接手公司官网,打开后台想改个DNS,结果满屏英文看得头大?“Nameserver 1”、“Nameserver… · 2026/9/27 0:57:27

避坑jsp网站建设项目实战pdf新手入门指南
避坑jsp网站建设项目实战pdf新手入门指南

避坑jsp网站建设项目实战pdf新手入门指南 改个需求建站公司拖一周,这种憋屈感相信不少老板都经历过。你以为只是改个按钮颜色,对方却让你等五天,美其名曰“测试流程长”。其实,这背后往往是技术栈的僵化和文档的缺失。对于想要自己掌控进度的… · 2026/9/27 0:57:08

Substrate 运行时引擎:面向 agent 与云原生的可编程内核
Substrate 运行时引擎:面向 agent 与云原生的可编程内核

1. 项目概述:Substrate 不是“另一个区块链框架”,而是基础设施的范式转移你搜“substrate”时,首页弹出的几乎全是“Substrate 区块链开发”“Polkadot 生态入门”“用 Substrate 搭建自己的链”——这恰恰是它被严重误读的起点。Substrate … · 2026/9/27 0:56:56

火狐网站开发好的插件对比评测:告别建站公司拖延症
火狐网站开发好的插件对比评测:告别建站公司拖延症

火狐网站开发好的插件对比评测:告别建站公司拖延症 改个需求建站公司拖一周,这种憋屈感只有做过项目的老板才懂。你以为是在等代码,其实是在等他们内部低效的流程和臃肿的架构。为了打破这个僵局,我花了三个月时间,对市面上主流的… · 2026/9/27 0:56:56

永久在线CRM自建指南:Deskcomm部署与团队协作实操
永久在线CRM自建指南:Deskcomm部署与团队协作实操

最近朋友的工作室在找人搭客户管理系统,他上来就问了一句:“有没有那种免费的CRM?最好不用每个月交钱,客户资料也别放在别人服务器上。”这个问题我回答过好多回了,干脆把这一轮的调研和落地过程整理出来。我最后选的是… · 2026/9/27 0:56:49

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码