vuer-cli 0.0.3__tar.gz → 0.0.4__tar.gz

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.
Files changed (34) hide show
  1. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/.gitignore +14 -1
  2. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/PKG-INFO +26 -3
  3. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/README.md +7 -1
  4. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/pyproject.toml +17 -2
  5. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/add.py +7 -20
  6. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/envs_publish.py +1 -1
  7. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/envs_pull.py +1 -1
  8. vuer_cli-0.0.4/src/vuer_cli/main.py +65 -0
  9. vuer_cli-0.0.4/src/vuer_cli/mcap_extractor.py +866 -0
  10. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/remove.py +7 -15
  11. vuer_cli-0.0.4/src/vuer_cli/scripts/demcap.py +167 -0
  12. vuer_cli-0.0.4/src/vuer_cli/scripts/minimap.py +462 -0
  13. vuer_cli-0.0.4/src/vuer_cli/scripts/ptc_utils.py +434 -0
  14. vuer_cli-0.0.4/src/vuer_cli/scripts/viz_ptc_cams.py +613 -0
  15. vuer_cli-0.0.4/src/vuer_cli/scripts/viz_ptc_proxie.py +483 -0
  16. vuer_cli-0.0.4/src/vuer_cli/scripts/vuer_ros_bridge.py +210 -0
  17. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/sync.py +1 -1
  18. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/upgrade.py +8 -15
  19. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/utils.py +11 -38
  20. vuer_cli-0.0.3/src/vuer_cli/main.py +0 -106
  21. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/CLAUDE.md +0 -0
  22. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/CONTRIBUTING.md +0 -0
  23. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/LICENSE +0 -0
  24. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/commands/add.md +0 -0
  25. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/commands/index.md +0 -0
  26. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/commands/remove.md +0 -0
  27. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/commands/sync.md +0 -0
  28. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/commands/upgrade.md +0 -0
  29. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/concepts.md +0 -0
  30. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/index.md +0 -0
  31. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/introduction.md +0 -0
  32. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/overview.md +0 -0
  33. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/docs/publishing.md +0 -0
  34. {vuer_cli-0.0.3 → vuer_cli-0.0.4}/src/vuer_cli/__init__.py +0 -0
@@ -4,6 +4,13 @@
4
4
  .idea
5
5
  # since this is public
6
6
  .run
7
+
8
+ # remove the env file.
9
+ .env
10
+
11
+ # test foldders
12
+ downloads
13
+
7
14
  # IDE files
8
15
  .eggs
9
16
  .tox
@@ -38,4 +45,10 @@ uv.lock
38
45
  output
39
46
  pcds
40
47
 
41
- .pytest_cache
48
+ .pytest_cache
49
+
50
+ # Assets folder (contains GLB models)
51
+ assets/
52
+
53
+ # MCAP output data
54
+ mcap_outputs/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vuer-cli
3
- Version: 0.0.3
3
+ Version: 0.0.4
4
4
  Summary: A Python CLI for Vuer, a real-time 3D visualization library
5
5
  Project-URL: Homepage, https://github.com/vuer-ai/vuer-cli
6
6
  Project-URL: Repository, https://github.com/vuer-ai/vuer-cli
@@ -18,10 +18,16 @@ Classifier: Programming Language :: Python :: 3.10
18
18
  Classifier: Programming Language :: Python :: 3.11
19
19
  Classifier: Programming Language :: Python :: 3.12
20
20
  Requires-Python: >=3.8
21
- Requires-Dist: params-proto>=3.0.0rc9
21
+ Requires-Dist: params-proto>=3.2.3
22
22
  Requires-Dist: requests>=2.31.0
23
23
  Requires-Dist: tqdm>=4.66.0
24
24
  Provides-Extra: all
25
+ Requires-Dist: mcap-ros2-support>=0.5.0; extra == 'all'
26
+ Requires-Dist: mcap>=1.1.0; extra == 'all'
27
+ Requires-Dist: numpy>=1.24.0; extra == 'all'
28
+ Requires-Dist: opencv-python>=4.8.0; extra == 'all'
29
+ Requires-Dist: pandas>=2.0.0; extra == 'all'
30
+ Requires-Dist: vuer>=0.0.79; extra == 'all'
25
31
  Provides-Extra: docs
26
32
  Requires-Dist: furo; extra == 'docs'
27
33
  Requires-Dist: myst-parser; extra == 'docs'
@@ -30,6 +36,17 @@ Requires-Dist: sphinx-copybutton; extra == 'docs'
30
36
  Requires-Dist: sphinx>=4.0; extra == 'docs'
31
37
  Requires-Dist: tomli>=1.1.0; (python_version < '3.11') and extra == 'docs'
32
38
  Provides-Extra: example
39
+ Provides-Extra: mcap
40
+ Requires-Dist: mcap-ros2-support>=0.5.0; extra == 'mcap'
41
+ Requires-Dist: mcap>=1.1.0; extra == 'mcap'
42
+ Requires-Dist: numpy>=1.24.0; extra == 'mcap'
43
+ Requires-Dist: opencv-python>=4.8.0; extra == 'mcap'
44
+ Requires-Dist: pandas>=2.0.0; extra == 'mcap'
45
+ Provides-Extra: viz
46
+ Requires-Dist: numpy>=1.24.0; extra == 'viz'
47
+ Requires-Dist: opencv-python>=4.8.0; extra == 'viz'
48
+ Requires-Dist: pandas>=2.0.0; extra == 'viz'
49
+ Requires-Dist: vuer>=0.0.79; extra == 'viz'
33
50
  Description-Content-Type: text/markdown
34
51
 
35
52
  # Vuer Hub Environment Manager
@@ -41,7 +58,13 @@ software packages.
41
58
  ## Installation
42
59
 
43
60
  ```bash
44
- pip install vuer-cli
61
+ pip install vuer-cli==0.0.4
62
+ ```
63
+
64
+ or with uv:
65
+
66
+ ```bash
67
+ uv add vuer-cli==0.0.4
45
68
  ```
46
69
 
47
70
  ## Environment Variables
@@ -7,7 +7,13 @@ software packages.
7
7
  ## Installation
8
8
 
9
9
  ```bash
10
- pip install vuer-cli
10
+ pip install vuer-cli==0.0.4
11
+ ```
12
+
13
+ or with uv:
14
+
15
+ ```bash
16
+ uv add vuer-cli==0.0.4
11
17
  ```
12
18
 
13
19
  ## Environment Variables
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "vuer-cli"
7
- version = "0.0.3"
7
+ version = "0.0.4"
8
8
  description = "A Python CLI for Vuer, a real-time 3D visualization library"
9
9
  readme = { file = "README.md", "content-type" = "text/markdown" }
10
10
  license = { text = "MIT" }
@@ -24,7 +24,7 @@ classifiers = [
24
24
  "Operating System :: OS Independent",
25
25
  ]
26
26
  dependencies = [
27
- "params-proto>=3.0.0rc9",
27
+ "params-proto>=3.2.3",
28
28
  "requests>=2.31.0",
29
29
  "tqdm>=4.66.0",
30
30
  ]
@@ -35,7 +35,22 @@ Repository = "https://github.com/vuer-ai/vuer-cli"
35
35
  Issues = "https://github.com/vuer-ai/vuer-cli/issues"
36
36
 
37
37
  [project.optional-dependencies]
38
+ mcap = [
39
+ "mcap>=1.1.0",
40
+ "mcap-ros2-support>=0.5.0",
41
+ "pandas>=2.0.0",
42
+ "numpy>=1.24.0",
43
+ "opencv-python>=4.8.0",
44
+ ]
45
+ viz = [
46
+ "vuer>=0.0.79",
47
+ "pandas>=2.0.0",
48
+ "numpy>=1.24.0",
49
+ "opencv-python>=4.8.0",
50
+ ]
38
51
  all = [
52
+ "vuer-cli[mcap]",
53
+ "vuer-cli[viz]",
39
54
  ]
40
55
  example = [
41
56
  ]
@@ -1,19 +1,15 @@
1
1
  """Add command - add an environment spec to environment.json then sync."""
2
2
 
3
- from dataclasses import dataclass
3
+ import json
4
4
  from pathlib import Path
5
- from typing import Optional
6
5
 
7
- import json
6
+ from params_proto import proto
8
7
 
9
8
  from .sync import Sync, read_environments_lock
10
9
  from .utils import print_error, parse_env_spec, normalize_env_spec
11
10
 
12
11
 
13
- # Use shared parser from utils; legacy '@' syntax is not supported anymore.
14
-
15
-
16
- @dataclass
12
+ @proto
17
13
  class Add:
18
14
  """Add an environment to environment.json and run `vuer sync`.
19
15
 
@@ -21,22 +17,13 @@ class Add:
21
17
  vuer add some-environment/v1.2.3
22
18
  """
23
19
 
24
- # NOTE: We keep these fields for params-proto compatibility, but the primary
25
- # way to call this command is positional: `vuer add name@version`.
26
- env: str = "" # Environment spec to add, e.g. "some-environment/v1.2.3"
27
- name: Optional[str] = None # Unused in current workflow
28
- version: str = "latest" # Unused in current workflow
20
+ # Required positional arg: environment spec, e.g. "some-environment/v1.2.3"
21
+ env: str
29
22
 
30
- def __call__(self) -> int:
23
+ def run(self) -> int:
31
24
  """Execute add command."""
32
25
  try:
33
26
  env_spec = self.env
34
- if not env_spec:
35
- # If env is empty, params-proto likely didn't map the positional arg;
36
- # treat this as a usage error.
37
- raise ValueError(
38
- "Missing environment spec. Usage: vuer add some-environment/v1.2.3"
39
- )
40
27
 
41
28
  name, version = parse_env_spec(env_spec)
42
29
  env_spec_normalized = normalize_env_spec(f"{name}/{version}")
@@ -83,7 +70,7 @@ class Add:
83
70
  print(
84
71
  f"[INFO] Added {env_spec_normalized} to environment.json dependencies. Running sync..."
85
72
  )
86
- return Sync()()
73
+ return Sync().run()
87
74
 
88
75
  except (FileNotFoundError, ValueError, RuntimeError) as e:
89
76
  print_error(str(e))
@@ -38,7 +38,7 @@ class EnvsPublish:
38
38
  tag: str = "latest" # Version tag
39
39
  dry_run: bool = False # Simulate without uploading
40
40
 
41
- def __call__(self) -> int:
41
+ def run(self) -> int:
42
42
  """Execute envs-publish command."""
43
43
  try:
44
44
  dry_run = self.dry_run or is_dry_run()
@@ -24,7 +24,7 @@ class EnvsPull:
24
24
  timeout: int = 300 # Request timeout in seconds
25
25
  skip_progress: bool = False # Disable progress bar
26
26
 
27
- def __call__(self) -> int:
27
+ def run(self) -> int:
28
28
  """Execute envs-pull command."""
29
29
  try:
30
30
  if not is_dry_run():
@@ -0,0 +1,65 @@
1
+ """Vuer CLI - Environment Manager for Vuer Hub."""
2
+
3
+ from params_proto import proto
4
+
5
+ from .add import Add
6
+ from .envs_publish import EnvsPublish
7
+ from .envs_pull import EnvsPull
8
+ from .remove import Remove
9
+ from .scripts.demcap import Demcap
10
+ from .scripts.minimap import Minimap
11
+ from .scripts.viz_ptc_cams import VizPtcCams
12
+ from .scripts.viz_ptc_proxie import VizPtcProxie
13
+ from .sync import Sync
14
+ from .upgrade import Upgrade
15
+
16
+
17
+ def entrypoint() -> int:
18
+ """Console script entry point."""
19
+ return _cli_entrypoint() or 0
20
+
21
+
22
+ @proto.cli(prog="vuer")
23
+ def _cli_entrypoint(
24
+ command: Sync
25
+ | Add
26
+ | Remove
27
+ | Upgrade
28
+ | EnvsPublish
29
+ | EnvsPull
30
+ | Demcap
31
+ | Minimap
32
+ | VizPtcCams
33
+ | VizPtcProxie,
34
+ ):
35
+ """Vuer Hub Environment Manager.
36
+
37
+ Available commands:
38
+ sync - Sync environments from environment.json dependencies (like npm install)
39
+ add - Add an environment to environment.json and run sync
40
+ remove - Remove an environment from environment.json and run sync
41
+ upgrade - Upgrade an environment to the latest version
42
+ envs-publish - Publish an environment to the Vuer Hub
43
+ envs-pull - Pull/download an environment from the Vuer Hub
44
+ demcap - Extract data from MCAP files to readable formats
45
+ minimap - Visualize robot trajectory with depth point clouds
46
+ viz_ptc_cams - Visualize point clouds from multiple cameras
47
+ viz_ptc_proxie - Visualize GLB robot model with point cloud
48
+
49
+ Examples:
50
+ vuer sync Sync all dependencies from environment.json
51
+ vuer add my-env/1.2.3 Add an environment and sync
52
+ vuer remove my-env/1.2.3 Remove an environment and sync
53
+ vuer upgrade my-env Upgrade an environment to latest version
54
+ vuer envs-publish Publish current environment to hub
55
+ vuer envs-pull my-env/1.2.3 Pull an environment from hub
56
+ vuer demcap --mcap-path /path/to/file.mcap Extract data from MCAP file
57
+ vuer minimap --data-dir /path/to/data --cmap turbo
58
+ vuer viz_ptc_cams --data-dir /path/to/data --cameras nav_front_d455,nav_right_d455
59
+ vuer viz_ptc_proxie --data-dir /path/to/data
60
+
61
+ Environment variables:
62
+ VUER_HUB_URL - Base URL of the Vuer Hub API
63
+ VUER_AUTH_TOKEN - JWT token for API authentication
64
+ """
65
+ return command.run()