Skip to main content
Learn how to discover, install, and use components from the Helios component registry.

Prerequisites

Before adding components, initialize your project:
This creates a helios.config.json file in your project root.

Browsing components

List all available components:
Search for specific components:
Filter by framework:
Show components for all frameworks:

Adding components

1

Install a component

Run the add command with the component name:
This will:
  • Fetch the component from the registry
  • Resolve and install registry dependencies (like use-video-frame)
  • Copy files to your src/components/helios directory
  • Install npm dependencies
  • Update helios.config.json
2

Review installed files

Check your components directory:
The timer component depends on use-video-frame, so both were installed.
3

Import and use

Import the component in your code:

Skip dependency installation

If you want to manage dependencies yourself:
The component files will be copied, but npm packages won’t be installed automatically.

Dependency resolution

Components can depend on:
  1. npm dependencies - External packages (e.g., react, @helios-project/core)
  2. Registry dependencies - Other components in the registry (e.g., use-video-frame)
The CLI automatically resolves the entire dependency tree. If component A depends on component B, both are installed when you run helios add A.

Framework detection

The CLI reads your framework setting from helios.config.json:
When adding components, it prioritizes:
  1. Exact framework match (e.g., react)
  2. Vanilla/framework-agnostic components
  3. Falls back if no match found

Configuration file

After adding components, helios.config.json tracks what’s installed:

Modifying components

Once copied, components belong to you. Edit them directly:
  • Change styles
  • Add props
  • Remove unused features
  • Combine multiple components
No need to fork or submit PRs - you own the code.

Updating components

Re-running helios add <component> will skip existing files by default. To overwrite:
Currently, there’s no automatic update mechanism. You own the code, so updates are manual.