fix(terminal): change repo name
This commit is contained in:
@@ -78,7 +78,7 @@ web-sys = { version = "0.3", default-features = false, features = [
|
||||
] }
|
||||
|
||||
[[workspace.metadata.leptos]]
|
||||
name = "base_path_demo"
|
||||
name = "rustui_playground"
|
||||
bin-package = "server"
|
||||
lib-package = "app"
|
||||
site-root = "target/site"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Rust Browser Terminal Development Guide
|
||||
|
||||
本指南用于在 `base-path-demo` 中实现一套 Rust 终端能力:
|
||||
本指南用于在 `rustui-playground` 中实现一套 Rust 终端能力:
|
||||
|
||||
- 后端:Axum + `portable-pty` 创建真实伪终端,负责启动 shell、读写 PTY、处理 resize。
|
||||
- 前端:Rust/WASM + Leptos 实现浏览器终端组件,负责输入、渲染、滚屏、选区和终端状态。
|
||||
@@ -27,7 +27,7 @@ Shell process: bash/zsh/fish/vim/top
|
||||
建议分四层沉淀。
|
||||
|
||||
```text
|
||||
base-path-demo/
|
||||
rustui-playground/
|
||||
app/
|
||||
src/
|
||||
pages/terminal.rs
|
||||
@@ -63,7 +63,7 @@ crates/
|
||||
|
||||
当前 workspace 已有 `axum = "0.8"`,但 WebSocket 模块需要启用 `ws` feature。
|
||||
|
||||
建议先调整 `base-path-demo/Cargo.toml`:
|
||||
建议先调整 `rustui-playground/Cargo.toml`:
|
||||
|
||||
```toml
|
||||
[workspace.dependencies]
|
||||
@@ -501,7 +501,7 @@ MVP 安全策略:
|
||||
- 从消息类型抽出 `terminal-protocol`。
|
||||
- 从 server module 抽出 `terminal-pty-server`。
|
||||
|
||||
验收:`base-path-demo` 只依赖这些 crates,不再持有核心实现。
|
||||
验收:`rustui-playground` 只依赖这些 crates,不再持有核心实现。
|
||||
|
||||
### M5: 自研 parser/buffer
|
||||
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
> 说明:本文档保留早期 scrollback 排查背景。当前终端实现已经进入 WebGL 默认渲染器、addon parity 与 P9 renderer 工程化阶段;最新状态请优先看 `TERMINAL_ROADMAP.md`。
|
||||
|
||||
本文档用于把 `base-path-demo` 当前浏览器终端实现的状态、已验证结论、未解决问题和下一步建议整理清楚,方便后续继续开发。
|
||||
本文档用于把 `rustui-playground` 当前浏览器终端实现的状态、已验证结论、未解决问题和下一步建议整理清楚,方便后续继续开发。
|
||||
|
||||
## 1. 当前目标
|
||||
|
||||
项目目标不是简单接一个现成 JS 终端,而是在 `base-path-demo` 中逐步沉淀一套 Rust 终端能力:
|
||||
项目目标不是简单接一个现成 JS 终端,而是在 `rustui-playground` 中逐步沉淀一套 Rust 终端能力:
|
||||
|
||||
- 后端:`Axum + portable-pty`
|
||||
- 前端:`Leptos + Rust/WASM`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Terminal Roadmap — 对照 xterm.js 的追平计划
|
||||
|
||||
本文档记录 `base-path-demo` 浏览器终端**当前已实现的能力**、**相比 xterm.js 仍缺失的功能**,以及每一项**计划的实现方式与优先级**,供后续开发接手。
|
||||
本文档记录 `rustui-playground` 浏览器终端**当前已实现的能力**、**相比 xterm.js 仍缺失的功能**,以及每一项**计划的实现方式与优先级**,供后续开发接手。
|
||||
|
||||
> 定位提醒:本项目目标不是复刻 xterm.js 这个通用 JS 终端库,而是按 [TERMINAL_HANDOFF.md](TERMINAL_HANDOFF.md) 的方向,用 `Axum + portable-pty`(后端)+ `Leptos + Rust/WASM`(前端)沉淀一套**高性能、可复用的 Rust 终端组件**。因此追平的重点是「让真实终端会话好用且性能好」,而非铺平 xterm.js 的全部 API 面。
|
||||
>
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
fn main() {
|
||||
println!("cargo:rustc-env=LEPTOS_OUTPUT_NAME=base_path_demo");
|
||||
println!("cargo:rustc-env=LEPTOS_OUTPUT_NAME=rustui_playground");
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@ use leptos_meta::MetaTags;
|
||||
use crate::app::App;
|
||||
|
||||
pub fn shell(options: LeptosOptions) -> impl IntoView {
|
||||
let css_href = SiteConfig::with_base_path("/pkg/base_path_demo.css");
|
||||
let js_href = SiteConfig::with_base_path("/pkg/base_path_demo.js");
|
||||
let wasm_href = SiteConfig::with_base_path("/pkg/base_path_demo.wasm");
|
||||
let css_href = SiteConfig::with_base_path("/pkg/rustui_playground.css");
|
||||
let js_href = SiteConfig::with_base_path("/pkg/rustui_playground.js");
|
||||
let wasm_href = SiteConfig::with_base_path("/pkg/rustui_playground.wasm");
|
||||
let hydration_script = format!(
|
||||
r#"import("{js_href}").then((mod) => {{
|
||||
mod.default({{ module_or_path: "{wasm_href}" }}).then(() => mod.hydrate());
|
||||
|
||||
Reference in New Issue
Block a user