@ioai/lerobot-studio 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +41 -0
- package/LICENSE +21 -0
- package/NOTICE +42 -0
- package/README.md +155 -0
- package/README.zh-CN.md +155 -0
- package/dist-lib/DockviewLayout-Bf0kd_q_.js +17280 -0
- package/dist-lib/LeRobotDataLoader-DYBXb4dz.js +7660 -0
- package/dist-lib/MediaCache-DZ7bEoOY.js +63 -0
- package/dist-lib/assets/parquet.worker-CWkXhGle.js +7 -0
- package/dist-lib/assets/parquetImage.worker-CsyqAWyH.js +7 -0
- package/dist-lib/lerobot-studio.css +8182 -0
- package/dist-lib/lerobot.d.ts +106 -0
- package/dist-lib/lerobot.es.js +7297 -0
- package/dist-lib/react-window-tHOzYrJa.js +11311 -0
- package/dist-lib/tslib.es6-DT2YfilY.js +141 -0
- package/dist-lib/wasmUrl-BBlR-NOh.js +4 -0
- package/dist-lib/workerManager-D6ovn2ln.js +270 -0
- package/package.json +142 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
> **Language / 语言:** [English](./CHANGELOG.md) | [简体中文](./CHANGELOG.zh-CN.md)
|
|
4
|
+
|
|
5
|
+
All notable changes to this project will be documented in this file.
|
|
6
|
+
|
|
7
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
8
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
9
|
+
|
|
10
|
+
## [1.0.0] - 2026-08-05
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Single-package source layout with logical `core`, `platform`, `ui`, `react`, and `web` boundaries
|
|
15
|
+
- Package identity `@ioai/lerobot-studio` (MIT)
|
|
16
|
+
- Shared `ViewerLayout` for app and library shells
|
|
17
|
+
- `LeRobotStudioProvider` public composition root
|
|
18
|
+
- Minimal synthetic LeRobot v2/v3 fixtures under `tests/fixtures/datasets`
|
|
19
|
+
- GitHub Actions CI, nightly browser tests, and release workflow (npm + GHCR)
|
|
20
|
+
- Governance, support, security response targets, privacy disclosure,
|
|
21
|
+
compatibility matrix, CODEOWNERS, and deprecation policy
|
|
22
|
+
- Release evidence for the approved `1.0.0` gates
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
|
|
26
|
+
- Defined the stable 1.0 library contract as viewer-only, ESM/CSR-only,
|
|
27
|
+
browser-only, React `^19.0.0`, zero telemetry, and backward compatible within
|
|
28
|
+
major version 1
|
|
29
|
+
- Defined exact LeRobot `v2.1` and `v3.0` support; other declared versions are
|
|
30
|
+
unknown rather than prefix-compatible
|
|
31
|
+
- Approved 1.0.0 release gates for unknown-version read-only warnings, blocked
|
|
32
|
+
export, browser validation, consumer validation, and official LeRobot
|
|
33
|
+
`v0.6.1` reader-consumable export
|
|
34
|
+
- Sample datasets are env-injected only; no sample manifest ships in the repo
|
|
35
|
+
|
|
36
|
+
### Removed
|
|
37
|
+
|
|
38
|
+
- Internal GitLab CI / private deploy configuration
|
|
39
|
+
- Google Analytics and Microsoft Clarity from the open-source web shell
|
|
40
|
+
- Hardcoded monorepo `export` copy script
|
|
41
|
+
- In-repo `public/sample-datasets.manifest.json`
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 IO-AI.TECH
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/NOTICE
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
LeRobot Studio Third-Party Notice
|
|
2
|
+
=================================
|
|
3
|
+
|
|
4
|
+
This repository depends on third-party packages. The exact dependency graph,
|
|
5
|
+
versions, package registry locations, integrity hashes, and SPDX license
|
|
6
|
+
identifiers are recorded in `package-lock.json`.
|
|
7
|
+
|
|
8
|
+
## Notable production dependencies
|
|
9
|
+
|
|
10
|
+
- `mediabunny` — MPL-2.0 (Mozilla Public License 2.0). Used for browser-side
|
|
11
|
+
video muxing, demuxing, and conversion during dataset export. MPL-2.0 is an
|
|
12
|
+
OSI-approved weak copyleft license (file-level). Unmodified use as a
|
|
13
|
+
dependency is permitted; if you modify MPL-covered files from mediabunny,
|
|
14
|
+
those modified files must remain under MPL-2.0 and source must be available
|
|
15
|
+
as required by that license.
|
|
16
|
+
- `@fontsource-variable/geist` — OFL-1.1. Font software redistributed under the
|
|
17
|
+
SIL Open Font License. Retain the OFL text when redistributing the font files.
|
|
18
|
+
|
|
19
|
+
Examples of additional non-MIT license identifiers present in the current
|
|
20
|
+
lockfile include:
|
|
21
|
+
|
|
22
|
+
- `argparse` 2.0.1 — Python-2.0
|
|
23
|
+
- `caniuse-lite` 1.0.30001799 — CC-BY-4.0
|
|
24
|
+
- `isexe` 3.1.5 — BlueOak-1.0.0
|
|
25
|
+
- `lightningcss` 1.32.0 and 1.33.0 — MPL-2.0 (primarily a build tool)
|
|
26
|
+
- `spawndamnit` 3.0.1 — `SEE LICENSE IN LICENSE`
|
|
27
|
+
- `tslib` 2.8.1 — 0BSD
|
|
28
|
+
|
|
29
|
+
This list is representative, not exhaustive; development tools, optional
|
|
30
|
+
platform packages, and transitive dependencies may use additional licenses.
|
|
31
|
+
This notice is an index, not a replacement for the applicable third-party
|
|
32
|
+
license texts. Before distributing a built artifact, generate and review a
|
|
33
|
+
complete production-artifact dependency and asset inventory from the exact
|
|
34
|
+
lockfile and build output used for that release.
|
|
35
|
+
|
|
36
|
+
## Trademarks
|
|
37
|
+
|
|
38
|
+
LeRobot, Hugging Face, GitHub, Geist, and other product or company names are
|
|
39
|
+
trademarks or registered trademarks of their respective owners. LeRobot Studio
|
|
40
|
+
is an independent project by IO-AI.TECH and is not affiliated with, endorsed by,
|
|
41
|
+
or sponsored by Hugging Face, GitHub, Vercel, or the trademark owners of those
|
|
42
|
+
names, except where such a relationship is explicitly stated in writing.
|
package/README.md
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# LeRobot Studio · [Live Demo →](https://lerobot.studio)
|
|
2
|
+
|
|
3
|
+
[简体中文 — README.zh-CN.md](README.zh-CN.md)
|
|
4
|
+
|
|
5
|
+
[](https://github.com/ioai-tech/lerobot-studio/actions/workflows/ci.yml)
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
[](https://ioai-tech.github.io/lerobot-studio/)
|
|
8
|
+
|
|
9
|
+
> Open [LeRobot](https://github.com/huggingface/lerobot) datasets in your browser. View video, charts, and raw data together, or add the same viewer to a React application.
|
|
10
|
+
|
|
11
|
+
Use it as a standalone site at [lerobot.studio](https://lerobot.studio). The React package is not yet published to npm; until it is available, use the standalone app or build from this repository. Local folders and archives are processed in your browser and are not uploaded to a cloud service. If you open a remote URL, the browser requests data from that URL's server.
|
|
12
|
+
|
|
13
|
+
<p align="center">
|
|
14
|
+
<img src=".github/assets/lerobot-studio-demo.webp" alt="LeRobot Studio demo — synchronized video, charts, and episode navigation" width="800" />
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Documentation
|
|
20
|
+
|
|
21
|
+
| Document | Description |
|
|
22
|
+
| ------------------------------------------ | ---------------------------------------------------------------------------- |
|
|
23
|
+
| [User Guide](docs/user-manual.md) | Open data, browse episodes, inspect panels, edit, export, and use shortcuts. |
|
|
24
|
+
| [Quick Start](docs/quick-start.md) | Start with the standalone app or install the React package. |
|
|
25
|
+
| [Embed in React](docs/embedding.md) | Install and configure the viewer in your application. |
|
|
26
|
+
| [API Reference](docs/api.md) | `LeRobotViewer` props, data sources, and generated types. |
|
|
27
|
+
| [Data formats](docs/data-formats.md) | Supported LeRobot versions and archive types. |
|
|
28
|
+
| [CORS & Range](docs/cors.md) | Headers needed for remote archives. |
|
|
29
|
+
| [Browser support](docs/browser.md) | Chromium / Firefox / WebKit notes. |
|
|
30
|
+
| [Troubleshooting](docs/troubleshooting.md) | Common failure modes. |
|
|
31
|
+
| [Development](docs/development.md) | Local setup and tests. |
|
|
32
|
+
| [Deployment](docs/deployment.md) | Docker, Cloudflare, sample env. |
|
|
33
|
+
| [Contributing](CONTRIBUTING.md) | How to send a PR. |
|
|
34
|
+
| [Security](SECURITY.md) | Reporting vulnerabilities. |
|
|
35
|
+
|
|
36
|
+
Full docs site: [ioai-tech.github.io/lerobot-studio](https://ioai-tech.github.io/lerobot-studio/)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Features
|
|
41
|
+
|
|
42
|
+
- **Open local or remote data** — folders, `.zip`, `.tar`, `.tar.gz`, `.tgz`, and HTTP(S) archives
|
|
43
|
+
- **Inspect data together** — synchronized video, images, charts, and raw features
|
|
44
|
+
- **Navigate efficiently** — search and filter episodes, control playback, and use keyboard shortcuts
|
|
45
|
+
- **Review dataset quality** — inspect dataset statistics and export health-check reports
|
|
46
|
+
- **Edit and export in the standalone app** — update episode tasks, remove or restore episodes, and export `v2.1` or `v3.0` datasets
|
|
47
|
+
- **Embed in React** — use the read-only viewer in a React 19 application
|
|
48
|
+
- **Keep local data local** — local files are processed in the browser; the npm package does not collect usage data
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Quick Start (website)
|
|
53
|
+
|
|
54
|
+
Open **[lerobot.studio](https://lerobot.studio)** — no installation required.
|
|
55
|
+
|
|
56
|
+
Choose a local folder, a local archive, or paste a remote archive URL. For a guided walkthrough, see the [User Guide](docs/user-manual.md).
|
|
57
|
+
|
|
58
|
+
### Run this repo locally
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
git clone https://github.com/ioai-tech/lerobot-studio.git
|
|
62
|
+
cd lerobot-studio
|
|
63
|
+
npm ci
|
|
64
|
+
npm run fixtures:generate
|
|
65
|
+
npm run dev # http://localhost:5173
|
|
66
|
+
npm run build # production SPA → dist/
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Docker:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
docker build -t lerobot-studio .
|
|
73
|
+
docker run --rm -p 8080:8080 lerobot-studio
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Embedding in React
|
|
79
|
+
|
|
80
|
+
The React package has not yet been published to npm. Its package name will be `@ioai/lerobot-studio`; until its first registry release, use the standalone app or build from this repository.
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
npm install @ioai/lerobot-studio
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
> **Requirements:** `react` and `react-dom` `^19.0.0`, ES modules, and client-side rendering. Server-side rendering, React Server Components, and Node.js are not supported.
|
|
87
|
+
|
|
88
|
+
### Stylesheet
|
|
89
|
+
|
|
90
|
+
```tsx
|
|
91
|
+
import '@ioai/lerobot-studio/style.css';
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Basic usage
|
|
95
|
+
|
|
96
|
+
```tsx
|
|
97
|
+
import { LeRobotViewer } from '@ioai/lerobot-studio';
|
|
98
|
+
import '@ioai/lerobot-studio/style.css';
|
|
99
|
+
|
|
100
|
+
export function App() {
|
|
101
|
+
return (
|
|
102
|
+
<div style={{ height: 720, minHeight: 480 }}>
|
|
103
|
+
<LeRobotViewer dataSource="https://example.com/dataset.zip" />
|
|
104
|
+
</div>
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Give the wrapper an explicit height. The viewer fills its parent and does not set the page height.
|
|
110
|
+
|
|
111
|
+
### Next.js (client only)
|
|
112
|
+
|
|
113
|
+
```tsx
|
|
114
|
+
'use client';
|
|
115
|
+
|
|
116
|
+
import dynamic from 'next/dynamic';
|
|
117
|
+
|
|
118
|
+
const Viewer = dynamic(() => import('@ioai/lerobot-studio').then((m) => m.LeRobotViewer), {
|
|
119
|
+
ssr: false,
|
|
120
|
+
});
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
More integration examples: [Embedding Guide](docs/embedding.md) · [API Reference](docs/api.md).
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Supported datasets
|
|
128
|
+
|
|
129
|
+
| `codebase_version` | Open | Notes |
|
|
130
|
+
| ------------------------------------------------ | ---------------------- | ------------------------------------------- |
|
|
131
|
+
| `v2.1` | View, edit, and export | Fully supported |
|
|
132
|
+
| `v3.0` | View, edit, and export | Fully supported |
|
|
133
|
+
| Newer `v2` or `v3` minor version | View only | Editing and export are disabled |
|
|
134
|
+
| `v2.0`, other major versions, or missing version | Not opened | The app does not guess a compatible version |
|
|
135
|
+
|
|
136
|
+
Archives: `.zip`, `.tar`, `.tar.gz`, `.tgz`.
|
|
137
|
+
|
|
138
|
+
The npm package is for viewing and in-session episode changes. The export engine is only available in the standalone app. Details: [Data formats](docs/data-formats.md).
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Contributing
|
|
143
|
+
|
|
144
|
+
Issues and PRs welcome — please read [CONTRIBUTING.md](CONTRIBUTING.md) first.
|
|
145
|
+
|
|
146
|
+
- Bugs / features → GitHub Issues
|
|
147
|
+
- Security → [SECURITY.md](SECURITY.md)
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## License
|
|
152
|
+
|
|
153
|
+
[MIT](LICENSE) © 2026 [IO-AI.TECH](https://io-ai.tech)
|
|
154
|
+
|
|
155
|
+
Third-party notices: [NOTICE](NOTICE). LeRobot Studio is an independent project and is not affiliated with Hugging Face.
|
package/README.zh-CN.md
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# LeRobot Studio · [在线演示 →](https://lerobot.studio)
|
|
2
|
+
|
|
3
|
+
[English — README.md](README.md)
|
|
4
|
+
|
|
5
|
+
[](https://github.com/ioai-tech/lerobot-studio/actions/workflows/ci.yml)
|
|
6
|
+
[](LICENSE)
|
|
7
|
+
[](https://ioai-tech.github.io/lerobot-studio/)
|
|
8
|
+
|
|
9
|
+
> 在浏览器中打开 [LeRobot](https://github.com/huggingface/lerobot) 数据集,同时查看视频、图表和原始数据;也可以将同一套查看器加入 React 应用。
|
|
10
|
+
|
|
11
|
+
你可以直接使用 [lerobot.studio](https://lerobot.studio)。React 包尚未发布到 npm;发布前请使用独立应用或从本仓库构建。本地文件夹和压缩包会在浏览器中处理,不会上传到云端。只有打开远程链接时,浏览器才会向该链接所在的服务器请求数据。
|
|
12
|
+
|
|
13
|
+
<p align="center">
|
|
14
|
+
<img src=".github/assets/lerobot-studio-demo.webp" alt="LeRobot Studio 演示 — 同步视频、图表与 Episode 浏览" width="800" />
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 文档
|
|
20
|
+
|
|
21
|
+
| 文档 | 说明 |
|
|
22
|
+
| ----------------------------------------- | ---------------------------------------------------- |
|
|
23
|
+
| [使用指南](docs/user-manual.zh-CN.md) | 打开数据、浏览 Episode、查看面板、编辑、导出和快捷键 |
|
|
24
|
+
| [快速开始](docs/quick-start.zh-CN.md) | 使用独立应用或安装 React 包 |
|
|
25
|
+
| [嵌入 React](docs/embedding.zh-CN.md) | 在自己的应用中安装和配置查看器 |
|
|
26
|
+
| [API 参考](docs/api.zh-CN.md) | `LeRobotViewer` 属性、数据源和类型 |
|
|
27
|
+
| [数据格式](docs/data-formats.zh-CN.md) | 支持的数据集版本与归档类型 |
|
|
28
|
+
| [CORS 与 Range](docs/cors.zh-CN.md) | 远程归档需要的响应头 |
|
|
29
|
+
| [浏览器支持](docs/browser.zh-CN.md) | Chromium / Firefox / WebKit |
|
|
30
|
+
| [故障排查](docs/troubleshooting.zh-CN.md) | 常见打不开的情况 |
|
|
31
|
+
| [开发](docs/development.zh-CN.md) | 本地环境与测试 |
|
|
32
|
+
| [部署](docs/deployment.zh-CN.md) | Docker、Cloudflare、样例环境变量 |
|
|
33
|
+
| [贡献指南](CONTRIBUTING.zh-CN.md) | 怎么提 PR |
|
|
34
|
+
| [安全](SECURITY.zh-CN.md) | 漏洞报告 |
|
|
35
|
+
|
|
36
|
+
文档站:[ioai-tech.github.io/lerobot-studio](https://ioai-tech.github.io/lerobot-studio/)
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## 功能
|
|
41
|
+
|
|
42
|
+
- **打开本地或远程数据** — 文件夹、`.zip`、`.tar`、`.tar.gz`、`.tgz` 和 HTTP(S) 压缩包
|
|
43
|
+
- **同步查看数据** — 视频、图像、图表和原始特征保持在同一帧
|
|
44
|
+
- **快速浏览 Episode** — 搜索和筛选 Episode,控制播放,并使用键盘快捷键
|
|
45
|
+
- **检查数据集质量** — 查看数据集统计信息,导出健康检查报告
|
|
46
|
+
- **在独立应用中编辑和导出** — 修改 Episode 任务、删除或恢复 Episode,并导出 `v2.1` 或 `v3.0` 数据集
|
|
47
|
+
- **嵌入 React** — 在 React 19 应用中使用只读查看器
|
|
48
|
+
- **本地数据留在本地** — 本地文件在浏览器中处理;npm 包不会收集使用数据
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## 快速开始(网站)
|
|
53
|
+
|
|
54
|
+
打开 **[lerobot.studio](https://lerobot.studio)**,无需安装。
|
|
55
|
+
|
|
56
|
+
选择本地文件夹、本地压缩包,或粘贴远程压缩包地址。完整操作说明见 [使用指南](docs/user-manual.zh-CN.md)。
|
|
57
|
+
|
|
58
|
+
### 在本地运行项目
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
git clone https://github.com/ioai-tech/lerobot-studio.git
|
|
62
|
+
cd lerobot-studio
|
|
63
|
+
npm ci
|
|
64
|
+
npm run fixtures:generate
|
|
65
|
+
npm run dev # http://localhost:5173
|
|
66
|
+
npm run build # 生产包 → dist/
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Docker:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
docker build -t lerobot-studio .
|
|
73
|
+
docker run --rm -p 8080:8080 lerobot-studio
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## 嵌入 React
|
|
79
|
+
|
|
80
|
+
React 包尚未发布到 npm。其包名为 `@ioai/lerobot-studio`;在首次发布前,请使用独立应用或从本仓库构建。
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
npm install @ioai/lerobot-studio
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
> **环境要求:** `react` 和 `react-dom` `^19.0.0`、ES 模块和客户端渲染。不支持服务端渲染、React Server Components 和 Node.js。
|
|
87
|
+
|
|
88
|
+
### 样式
|
|
89
|
+
|
|
90
|
+
```tsx
|
|
91
|
+
import '@ioai/lerobot-studio/style.css';
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### 基本用法
|
|
95
|
+
|
|
96
|
+
```tsx
|
|
97
|
+
import { LeRobotViewer } from '@ioai/lerobot-studio';
|
|
98
|
+
import '@ioai/lerobot-studio/style.css';
|
|
99
|
+
|
|
100
|
+
export function App() {
|
|
101
|
+
return (
|
|
102
|
+
<div style={{ height: 720, minHeight: 480 }}>
|
|
103
|
+
<LeRobotViewer dataSource="https://example.com/dataset.zip" />
|
|
104
|
+
</div>
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
外层容器需要有明确高度。查看器会填满父元素,不会自行决定页面高度。
|
|
110
|
+
|
|
111
|
+
### Next.js(仅客户端)
|
|
112
|
+
|
|
113
|
+
```tsx
|
|
114
|
+
'use client';
|
|
115
|
+
|
|
116
|
+
import dynamic from 'next/dynamic';
|
|
117
|
+
|
|
118
|
+
const Viewer = dynamic(() => import('@ioai/lerobot-studio').then((m) => m.LeRobotViewer), {
|
|
119
|
+
ssr: false,
|
|
120
|
+
});
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
更多集成示例:[嵌入指南](docs/embedding.zh-CN.md) · [API 参考](docs/api.zh-CN.md)。
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 支持的数据集
|
|
128
|
+
|
|
129
|
+
| `codebase_version` | 打开 | 说明 |
|
|
130
|
+
| ------------------------------ | ------------------ | ------------------------ |
|
|
131
|
+
| `v2.1` | 可查看、编辑和导出 | 完全支持 |
|
|
132
|
+
| `v3.0` | 可查看、编辑和导出 | 完全支持 |
|
|
133
|
+
| 较新的 `v2` 或 `v3` minor 版本 | 仅查看 | 不支持编辑和导出 |
|
|
134
|
+
| `v2.0`、其他主版本或缺失版本 | 不打开 | 应用不会猜测可兼容的版本 |
|
|
135
|
+
|
|
136
|
+
归档:`.zip`、`.tar`、`.tar.gz`、`.tgz`。
|
|
137
|
+
|
|
138
|
+
npm 包提供查看和会话内的 Episode 修改功能。导出引擎只在独立应用中提供。详见 [数据格式](docs/data-formats.zh-CN.md)。
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## 参与贡献
|
|
143
|
+
|
|
144
|
+
提交 Issue 或 Pull Request 前,请阅读 [CONTRIBUTING.zh-CN.md](CONTRIBUTING.zh-CN.md)。
|
|
145
|
+
|
|
146
|
+
- Bug / 需求 → GitHub Issues
|
|
147
|
+
- 安全问题 → [SECURITY.zh-CN.md](SECURITY.zh-CN.md)
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## 许可证
|
|
152
|
+
|
|
153
|
+
[MIT](LICENSE) © 2026 [IO-AI.TECH](https://io-ai.tech)
|
|
154
|
+
|
|
155
|
+
第三方说明见 [NOTICE](NOTICE)。LeRobot Studio 是独立项目,与 Hugging Face 没有附属关系。
|