open-index/open-npm huggingface dataset:
npm package: @jspatrick/threejs
Description: JavaScript 3D library
Author: mrdoob
Latest version: 1.0.8

three.js
========

[![NPM Package][npm]][npm-url]
[![Build Size][build-size]][build-size-url]
[![NPM Downloads][npm-downloads]][npmtrends-url]
[![Dev Dependencies][dev-dependencies]][dev-dependencies-url]
[![Language Grade][lgtm]][lgtm-url]

#### JavaScript 3D library ####

The aim of the project is to create an easy to use, lightweight, 3D library with a default WebGL renderer. The library also provides Canvas 2D, SVG and CSS3D renderers in the examples.

[Examples](http://threejs.org/examples/) &mdash;
[Documentation](http://threejs.org/docs/) &mdash;
[Wiki](https://github.com/mrdoob/three.js/wiki) &mdash;
[Migrating](https://github.com/mrdoob/three.js/wiki/Migration-Guide) &mdash;
[Questions](http://stackoverflow.com/questions/tagged/three.js) &mdash;
[Forum](https://discourse.threejs.org/) &mdash;
[Slack](https://join.slack.com/t/threejs/shared_invite/enQtMzYxMzczODM2OTgxLTQ1YmY4YTQxOTFjNDAzYmQ4NjU2YzRhNzliY2RiNDEyYjU2MjhhODgyYWQ5Y2MyZTU3MWNkOGVmOGRhOTQzYTk) &mdash;
[Discord](https://discordapp.com/invite/HF4UdyF)

### Usage ###

This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the scene and camera, and it adds that viewport to the `document.body` element. Finally, it animates the cube within the scene for the camera.

```javascript
import * as THREE from 'js/three.module.js';

var camera, scene, renderer;
var geometry, material, mesh;

init();
animate();

function init() {

	camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 0.01, 10 );
	camera.position.z = 1;

	scene = new THREE.Scene();

	geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
	material = new THREE.MeshNormalMaterial();

	mesh = new THREE.Mesh( geometry, material );
	scene.add( mesh );

	renderer = new THREE.WebGLRenderer( { antialias: true } );
	renderer.setSize( window.innerWidth, window.innerHeight );
	document.body.appendChild( renderer.domElement );

}

function animate() {

	requestAnimationFrame( animate );

	mesh.rotation.x += 0.01;
	mesh.rotation.y += 0.02;

	renderer.render( scene, camera );

}
```

If everything went well you should see [this](https://jsfiddle.net/8kubjpL5/).

### Change log ###

[Releases](https://github.com/mrdoob/three.js/releases)


[npm]: https://img.shields.io/npm/v/three
[npm-url]: https://www.npmjs.com/package/three
[build-size]: https://badgen.net/bundlephobia/minzip/three
[build-size-url]: https://bundlephobia.com/result?p=three
[npm-downloads]: https://img.shields.io/npm/dw/three
[npmtrends-url]: https://www.npmtrends.com/three
[dev-dependencies]: https://img.shields.io/david/dev/mrdoob/three.js
[dev-dependencies-url]: https://david-dm.org/mrdoob/three.js#info=devDependencies
[lgtm]: https://img.shields.io/lgtm/alerts/github/mrdoob/three.js
[lgtm-url]: https://lgtm.com/projects/g/mrdoob/three.js/
npm package: @jspatrick/tooltip
Description: A Vue Popup Plug
Author: J.S.Patrick
Latest version: 1.3.20

## A vue component Popupwindow Plug

~~~
npm install @jspatrick/tooltip --save
~~~

~~~javascript
// main.js
import Popup from '@jspatrick/tooltip'
import '@jspatrick/tooltip/dist/popup.css'
Vue.use( Popup, { router, vuex } )

// component
this.$popup({
    render: component,
    mask: Mask,
    blur: false,    // 弹窗背景虚化
    background: `background: rgba(12, 49, 70, 0.5);
        box-shadow: 0px -1px 5px 2px rgba(2, 13, 20, 0.69);`, // 背景css
    outline: {  // 框线和四个角的样式
        mode:'1234',
        color:'#25d4ff',
        size:'15',
        margin:'-24',
        showBorder: true,
        border:'1px solid #25d4ff'
    },
    trackMouse: false,  // 弹窗是否追随鼠标位置
    position:{      // 弹窗位置
        left: 0,
        top: 0	
    },
    closeImg: null, // 关闭图标
    zIndex: null,       // 层级
})
~~~
npm package: @jspawn/imagecli-wasm
Description: imagecli compiled to WASM
Latest version: 0.1.0

# imagecli-wasm

`imagecli` compiled to WASM via WASI SDK. This doesn't expose any kind of interface - just the WASM file.

```sh
npm install --save @jspawn/imagecli-wasm
```

## Examples

### Node

**index.mjs**

```javascript
import * as fs from "fs/promises";
// https://nodejs.org/api/wasi.html
import { WASI } from "wasi";

const buf = await fs.readFile(
  "node_modules/@jspawn/imagecli-wasm/imagecli.wasm"
);
const mod = await WebAssembly.compile(buf);

const wasi = new WASI({
  // Create a blank image.
  args: ["imagecli", "-o", "blank.jpg", "-p", "new 100 100 (255, 255, 0)"],
  preopens: {
    ".": ".",
  },
});
const importObject = { wasi_snapshot_preview1: wasi.wasiImport };
const instance = await WebAssembly.instantiate(mod, importObject);

// Should be `0` on success.
const exitCode = wasi.start(instance);
```

Run with:

```sh
# Depending on your version of node, you may not need the experimental flags.
node --experimental-wasm-bigint --experimental-wasi-unstable-preview1 index.mjs
```