open-index/open-npm huggingface dataset:
npm package: @fern-solutions/aframe-3dof
Description: A-Frame component for rendering in 3DoF when in VR
Author: Noeri Huisman
Latest version: 1.1.1

# 3DoF component
[![npm version](https://img.shields.io/npm/v/@fern-solutions/aframe-3dof.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-3dof)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/aframe-3dof.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-3dof)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/fern-aframe-components/)
[![twitter](https://flat.badgen.net/badge/twitter/@noerihuisman/blue?icon=twitter&label)](https://twitter.com/noerihuisman)
[![mastodon](https://flat.badgen.net/badge/mastodon/@noerihuisman@arvr.social/blue?icon=mastodon&label)](https://arvr.social/@noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

This component can be used to render a scene in either monoscopic or stereoscopic 3DoF. Only the orientation of the head is used. The position of the camera can be controlled with the position property.

Checkout the example: [Online Demo](https://aframe-components.fern.solutions/3dof) | [Source](https://github.com/mrxz/fern-aframe-components/blob/main/3dof/example/index.html)

## Usage
Load the script from [npm](https://www.npmjs.com/package/@fern-solutions/aframe-3dof) or add the following script tag:
```HTML
<script src="https://unpkg.com/@fern-solutions/aframe-3dof/dist/3dof.umd.min.js"></script>
```

The `3dof` component can be added to any `a-scene` element as follows:
```HTML
<a-scene 3dof="position: 0 1.6 0">
```
npm package: @fern-solutions/aframe-extra-stats
Description: A-Frame component that adds additional stats to the built-in stats component
Author: Noeri Huisman
Latest version: 1.0.2

# Extra Stats component
[![npm version](https://img.shields.io/npm/v/@fern-solutions/aframe-extra-stats.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-extra-stats)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/aframe-extra-stats.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-extra-stats)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/fern-aframe-components/)
[![twitter](https://flat.badgen.net/twitter/follow/noerihuisman)](https://twitter.com/noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

This component expands on the built-in `stats` component with additional stats. It's intended for debugging and development purposes only.

Checkout the example: [Online Demo](https://aframe-components.fern.solutions/extra-stats) | [Source](https://github.com/mrxz/fern-aframe-components/blob/main/extra-stats/example/index.html)

## Usage
Load the script from [npm](https://www.npmjs.com/package/@fern-solutions/aframe-extra-stats) or add the following script tag:
```HTML
<script src="https://unpkg.com/@fern-solutions/aframe-extra-stats/dist/extra-stats.umd.min.js"></script>
```

The `extra-stats` component should be added to an `<a-scene>` and is intended to **_replace_** the `stats` component. Make sure to only add one or the other to the `<a-scene>`. Example:
```HTML
<a-scene extra-stats>
    <!-- scene -->
</a-scene>
```

Properties can be used to enable or disable groups. For example, the following results in a stats panel similar to the built-in one:
```HTML
<a-scene extra-stats="three: true; aframe: true; three-alloc: false">
    <!-- scene -->
</a-scene>
```

**Note:** The properties can't be changed after initialization, as they determin with which plugins rStats is initialized.

## Properties
| Name | Type | Default |Description |
| ---- | ---- | ------- |----------- |
| `three` | boolean | true | Show the Three.js related stats |
| `aframe` | boolean | true | Show the A-Frame related stats ("Load Time" and "Entities") |
| `three-alloc` | boolean | true | Show the Three.js allocations of various types (Vectors, Matrices, Quaternions and Colors) |
npm package: @fern-solutions/aframe-screen-fade
Description: A-Frame component for fading the screen, for both desktop and VR
Author: Noeri Huisman
Latest version: 1.0.2

# Screen Fade component
[![npm version](https://img.shields.io/npm/v/@fern-solutions/aframe-screen-fade.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-screen-fade)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/aframe-screen-fade.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-screen-fade)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/fern-aframe-components/)
[![twitter](https://flat.badgen.net/badge/twitter/@noerihuisman/blue?icon=twitter&label)](https://twitter.com/noerihuisman)
[![mastodon](https://flat.badgen.net/badge/mastodon/@noerihuisman@arvr.social/blue?icon=mastodon&label)](https://arvr.social/@noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

This component allows the screen to be faded to and from a solid color. The effect works in both desktop and VR mode. This can be used for situations like loading a scene, handling transitions or snap turning.

Checkout the example: [Online Demo](https://aframe-components.fern.solutions/screen-fade) | [Source](https://github.com/mrxz/fern-aframe-components/blob/main/screen-fade/example/index.html)

## Usage
Load the script from [npm](https://www.npmjs.com/package/@fern-solutions/aframe-screen-fade) or add the following script tag:
```HTML
<script src="https://unpkg.com/@fern-solutions/aframe-screen-fade/dist/screen-fade.umd.min.js"></script>
```

The `screen-fade` component can be attached to the `<a-camera>` as follows:
```HTML
<a-camera screen-fade></a-camera>
```

The fade itself can then be controlled using the `intensity` property.

## Properties
| Name | Type | Default |Description |
| ---- | ---- | ------- |----------- |
| `color` | color | #000000 | The solid color the screen fades to |
| `intensity` | float | 0.0 | The intensity of the fade between 0.0 and 1.0 |
npm package: @fern-solutions/aframe-sky-background
Description: A-Frame primitive for efficiently rendering a sky in the background
Author: Noeri Huisman
Latest version: 1.0.4

# Sky Background component
[![npm version](https://img.shields.io/npm/v/@fern-solutions/aframe-sky-background.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-sky-background)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/aframe-sky-background.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/aframe-sky-background)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/fern-aframe-components/)
[![twitter](https://flat.badgen.net/badge/twitter/@noerihuisman/blue?icon=twitter&label)](https://twitter.com/noerihuisman)
[![mastodon](https://flat.badgen.net/badge/mastodon/@noerihuisman@arvr.social/blue?icon=mastodon&label)](https://arvr.social/@noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

This primitives allows a sky to be added that's either a gradient or an equirectangular skybox. In contrast to the built-in `<a-sky>` this doesn't use a sphere geometry. It renders a fullscreen triangle covering the far plane, ensuring it's always in the background and more performant.

Checkout the example: [Online Demo](https://aframe-components.fern.solutions/sky-background) | [Source](https://github.com/mrxz/fern-aframe-components/blob/main/sky-background/example/index.html)

## Usage
Load the script from [npm](https://www.npmjs.com/package/@fern-solutions/aframe-sky-background) or add the following script tag:
```HTML
<script src="https://unpkg.com/@fern-solutions/aframe-sky-background/dist/sky-background.umd.min.js"></script>
```

The `<a-sky-background>` primitive can be used as follows:
```HTML
<a-sky-background top-color="#0077ff" bottom-color="#ffffff"></a-sky-background>
```
Instead of a gradient sky, an equirectangular skybox texture can be used as well:
```HTML
<a-sky-background src="url(./textures/sky.png)"></a-sky-background>
```

## Attributes
| Name | Type | Default |Description |
| ---- | ---- | ------- |----------- |
| `top-color` | color | #0077ff | The solid color of the sky at the top |
| `bottom-color` | color | #ffffff | The solid color of the sky at the bottom |
| `offset` | number | 120 | Offset in meters to 'angle' the gradient a bit |
| `exponent` | number | 0.9 | Exponent used to blend between the top and bottom color as a function of height |
| `src` | map | null | The equirectangular texture to use, disables the gradient sky |
npm package: @fern-solutions/three-mirror
Description: Mirror object for Three.js (XR compatible)
Author: Noeri Huisman
Latest version: 0.1.3

# Three.js Mirror
[![npm version](https://img.shields.io/npm/v/@fern-solutions/three-mirror.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/three-mirror)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/three-mirror.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/three-mirror)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/three-mirror/)
[![twitter](https://flat.badgen.net/badge/twitter/@noerihuisman/blue?icon=twitter&label)](https://twitter.com/noerihuisman)
[![mastodon](https://flat.badgen.net/badge/mastodon/@noerihuisman@arvr.social/blue?icon=mastodon&label)](https://arvr.social/@noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

**This is a WIP project**

This project introduces a `Mirror` object that you can add to your Three.js scenes. It's based on my A-Frame component and works in the same way: [@fern-solutions/aframe-mirror](https://github.com/mrxz/fern-aframe-components/tree/main/mirror)

## Usage
See [example/index.html](example/index.html) for an example of how to use this.

## Limitations
* Mirrors are not rendered recursively, so any mirror seen from another mirror will just render as an opaque plane
* Avoid mixing transparency with mirrors (e.g. looking at a mirror through transparent objects). Depending on the render-order this either results in the overlap being an opaque mirror or the transparent object not being visible.
npm package: @fern-solutions/three-vr-postfx
Description: [![npm version](https://img.shields.io/npm/v/@fern-solutions/three-vr-postfx.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/three-vr-postfx) [![npm version](https://img.shields.io/npm/l/@fern-solutions/three-vr-postfx.svg?style=flat
Author: Noeri Huisman
Latest version: 0.1.0

# @fern-solutions/three-vr-postfx
[![npm version](https://img.shields.io/npm/v/@fern-solutions/three-vr-postfx.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/three-vr-postfx)
[![npm version](https://img.shields.io/npm/l/@fern-solutions/three-vr-postfx.svg?style=flat-square)](https://www.npmjs.com/package/@fern-solutions/three-vr-postfx)
[![github](https://flat.badgen.net/badge/icon/github?icon=github&label)](https://github.com/mrxz/three-vr-postfx/)
[![twitter](https://flat.badgen.net/badge/twitter/@noerihuisman/blue?icon=twitter&label)](https://twitter.com/noerihuisman)
[![mastodon](https://flat.badgen.net/badge/mastodon/@noerihuisman@arvr.social/blue?icon=mastodon&label)](https://arvr.social/@noerihuisman)
[![ko-fi](https://img.shields.io/badge/ko--fi-buy%20me%20a%20coffee-ff5f5f?style=flat-square)](https://ko-fi.com/fernsolutions)

Post-processing effects tailored for VR. It aims to avoid many of the performance pitfalls when

# Usage
Either install the package from [npm](https://www.npmjs.com/package/@fern-solutions/three-vr-postfx) or load it using import maps:
```HTML
<script type="importmap">
  {
    "imports": {
      "@fern-solutions/three-vr-postfx": "https://cdn.jsdelivr.net/npm/@fern-solutions/three-vr-postfx/dist/three-vr-postfx.min.js"
    }
  }
</script>
```

This allows the effect to be used as follows:
```js
import { SobelEffect } from '@fern-solutions/three-vr-postfx';

// Instantiate effect
const sobelEffect = new SobelEffect();

// Handle resizing
const resize = () => {
    if(!renderer.xr.isPresenting) {
        renderer.setSize(window.innerWidth, window.innerHeight);
        camera.aspect = window.innerWidth / window.innerHeight;
        camera.updateProjectionMatrix();
    }

    const size = renderer.getSize(new THREE.Vector2());
    sobelEffect.setSize(size.width, size.height);
}
window.addEventListener('resize', _ => resize())
renderer.xr.addEventListener('sessionstart', _ => resize());
renderer.xr.addEventListener('sessionend', _ => resize());

// Render
//renderer.render(scene, camera);
sobelEffect.render(scene, camera);
```
See the example in [`example/`](./example/) for a full example.

Each effect is intended to replace the main `renderer.render` call. This means that the effects can't be combined with each-other. This is a deliberate limitation of the library. Ultimately having multiple passes is a poor fit for VR on mobile tile-based GPUs. Optimizing one effect makes it possible to use it for your experience, but the headroom generally does not allow these effects to be stacked on top of each other.

# Effects
 * `SobelEffect(resolution?)`
 * `BlurEffect(resolution?)`
 * `BasicBloomEffect(resolution?, strength?, radius?, threshold?)`
 * `UnrealBloomEffect(resolution?, strength?, radius?, threshold?)`
npm package: @fernand0x/sdk-errors-react-native
Description: React Native error handling module for the VeChain SDK - Mobile-optimized error management
Author: VeChain Foundation
Latest version: 1.2.0

# @vechain/sdk-errors

Welcome to the **errors package** of the VeChain SDK!

## Introduction

The VeChain SDK Error package is specifically designed to handle custom errors seamlessly integrated into the Core and Network packages. It serves as a dedicated solution for managing and communicating errors within these essential components, ensuring a streamlined and robust development experience. By leveraging VeChain SDK Error, developers can enhance error handling and reporting, contributing to the overall reliability and resilience of the Core and Network functionalities within the VeChain SDK ecosystem.

## Commands

- **Build**: Execute `yarn build` to build the package.
- **Lint**: Execute `yarn lint` to lint the package.
- **Format**: Execute `yarn format` to format the package.
- **Test:unit**: Execute `yarn test:unit` to run unit tests.
- **Test:integration**: Execute `yarn test:integration` to run integration tests.
- **Test**: Execute `yarn test` to run all tests on the package.
   - **NOTE**: Tests and Integration tests require thor-solo to be running locally. You can run and stop separately thor solo node with `yarn start-thor-solo` and `yarn stop-thor-solo` or run all tests with `yarn test:solo` which will start thor solo node, run all tests and stop thor solo at the end. Same for integration tests. You can directly run `yarn test:integration:solo` to run integration tests with thor solo.

## Usage

Explore examples of how to use this package in real-world scenarios at [vechain SDK examples](https://github.com/vechain/vechain-sdk/tree/main/docs/examples).

Feel free to leverage these resources and don't hesitate to reach out if you have any questions or need further assistance.

Happy coding with the VeChain SDK!