open-index/open-npm huggingface dataset:
npm package: @injectable-ts/react
Description: Purely-functional strictly-typed IoC/DI for TypeScript
Author: raveclassic@gmail.com
Latest version: 1.0.0

# react

This library was generated with [Nx](https://nx.dev).

## Building

Run `nx build react` to build the library.

## Running unit tests

Run `nx test react` to execute the unit tests via [Jest](https://jestjs.io).
npm package: @injectable/config-service
Description: service for retrieving a simple static config object
Author: Bela Bohlender
Latest version: 1.0.2

# Config Service

Service for retrieving a simple static config object.

*This is an templete for developing an Injectable for the [Injectable Core](https://github.com/signinit/injectable-core).*

## Config file

The path to the config file is always `config.json`.

The config values for an injectable are stored mapped to their primary typename.
A example config could look like this.
```json
{
    "DevelopmentReloadService": {
        "injectables": [
            "SampleInjectable"
        ]
    }
}
```

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/console-log-service
Description: log service for inject-system which outputs the logs in the console
Author: Bela Bohlender
Latest version: 2.0.1

# Console Log Service

*This package works with the [Injectable Core](https://github.com/signinit/injectable-core) and is an extension of the [Log Service](https://github.com/signinit/injectable-log-service).*

the service outputs the logs from the LogManager on the console via `consol.log`.

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/development-reload-service
Description: service for reloading an injectable on file change
Author: Bela Bohlender
Latest version: 1.0.2

# Development Reload Service

Service for reloading an injectable on file change.

*This is an templete for developing an Injectable for the [Injectable Core](https://github.com/signinit/injectable-core).*

## Caution

The service currently only watches the files in the directory specified in the `package.json` main attribute.  
Because of the caching mechanism of the @injectable/server reloading an injectable only reloads its code but not the dependecies.

## Configuration

This service uses the [Config Service](https://github.com/signinit/injectable-config-service) to get a configuration a startup from the `config.json` file.  
A sample configuration which watches the `sample-injectable` could look like this.

```json
{
    "injectables": [
        "sample-injectable"
    ]
}
```

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/express-service
Description: http server service to host resources using the express npm library under the hood
Author: Bela Bohlender
Latest version: 2.0.0

# Express Service

Http server service to host resources using the [express](https://github.com/expressjs/express) npm library under the hood.

*This package works with the [Inject System](https://github.com/signinit/injectable-core).*

## Routing

Routes get matched via the [route-parser](https://github.com/rcs/route-parser) npm library

Some examples from the route-parser readme.

* `/some/(optional/):thing`
* `/users/:id/comments/:comment/rating/:rating`
* `/*a/foo/*b`
* `/books/*section/:title`
* `/books?author=:author&subject=:subject`

The url params like `author` and `subject` from the last example are assigned to the `params` object from the request.


## Usage

```typescript
HttpService.setResources(this.name, [
    {
        route: "",
        method: "GET",
        onRequest: (req: Request, res: Response, next: NextFunction) => {
            //do stuff with express request ...
        }
    }
])
```

## TBD
* Dynamic Middleware

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/file-hosting-service
Description: service for hosting files with compress option
Author: Bela Bohlender
Latest version: 2.0.0

# File Hosting Service

Service for hosting files with compress option.

*This package works with the [Injectable Core](https://github.com/signinit/injectable-core).*

## Functions

Registers an id for a file.

```typescript
public registerFileId(): number
```

Hosts an node buffer on a route.

```typescript
public setFile(
    injectableName: string,
    fileId: number,
    route: string,
    buffer: Buffer,
    encodings: Array<Encoding>,
    onRequest?: OnRequest
): number
```

Hosts the file from the path on a route.

```typescript
public setFileFromPath(
    injectableName: string,
    fileId: number,
    route: string,
    path: string,
    encodings: Array<Encoding>,
    onRequest?: OnRequest
): number
```

Deletes the file (also the path) wth the given id.

```typescript
public deleteFile(
    injectableName: string,
    fileId: number
): void
```


## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/log-service
Description: abstract log service for inject-system
Author: Bela Bohlender
Latest version: 2.0.3

# Log Service

The Log Service is an abstract **Injectable**. It cannot be executed but only extended.

*This package works with the [Inject System](https://github.com/signinit/injectable-core).*

## Abstract Functions
```typescript
log(injectableName: string, logLevel: LogLevel, message: string): void
```
Logs the message with the log level and the injectable origin.

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/react-service
Description: service for compiling a react component to a website
Author: Bela Bohlender
Latest version: 2.0.0

# React Service

Service for compiling a [react](https://github.com/facebook/react) component to a web page.  
Uses server side rendering via the [Server Side Rendering Service](https://github.com/signinit/injectable-server-side-rendering-service).

*This is an templete for developing an Injectable for the [Injectable Core](https://github.com/signinit/injectable-core).*

## Functions

Registers an id for a page.

```typescript
public registerPageId(): number
```

Sets a react page to compile and host on the route.

```typescript
public setPage<T>(
    injectableName: string,
    pageId: number,
    compileableComponent: Compileable<FunctionComponent<T>>,
    onFileRequest: OnRequest,
    onPageRequest: OnPageRequest<T>,
    baseRoute: string,
    encodings: Array<Encoding>
): void
```

Deletes a page with all its resources.

```typescript
public deletePage(injectableName: string, pageId: number): void
```

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/server
Description: server for the injectable system
Author: Bela Bohlender
Latest version: 1.0.2

# Injectable Server

*This package works with the [Inject System](https://github.com/signinit/injectable-core).*

Check out [this tutorial](https://github.com/signinit/injectable-server-tutorial) on how to setup a server.

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/server-side-rendering-service
Description: service for hosting javascript websites with server side rendering
Author: Bela Bohlender
Latest version: 2.0.4

# Server Side Rendering Service

Service for hosting javascript websites with server side rendering.

*This package works with the [Injectable Core](https://github.com/signinit/injectable-core).*

## Compileable

An compileable represents any data or function as a value and a string of code to compile with webpack.  
Additionally it saves all the additional files that got splitted and imports for using css.
An dynamic compileable is just a observable that emits an compileable.

## Functions

Registers an id for a page.

```typescript
public registerPageId(): number
```

Sets a page to be compiled and then hosted on the baseRoute.

```typescript
public setPage<Params, Page>(
    injectableName: string,
    pageId: number,
    compileableFrontendRenderer: Compileable<FrontendRenderer<Page>>,
    backendRenderer: BackendRenderer<Page>,
    compileablePageFactory: Compileable<PageFactory<Params, Page>>,
    onFileRequest: OnRequest,
    onPageRequest: OnPageRequest<Params>,
    configuration: Configuration,
    baseRoute: string,
    encodings: Array<Encoding>
): void
```

Deletes a page with all its files by its id.

```typescript
public deletePage(injectableName: string, pageId: number): void
```

## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectable/webpack-service
Description: service for compiling strings to js
Author: Bela Bohlender
Latest version: 2.0.0

# Webpack Service

Service for compiling strings to js using [webpack](https://github.com/webpack/webpack).

*This package works with the [Injectable Core](https://github.com/signinit/injectable-core).*

## Functions

Registers an id for a compilation.

```typescript
public registerCompilationId(): number
```

Sets a compilation to be compiled and hosted

```typescript
public setCompilation(
    injectableName: string,
    compilationId: number,
    files: { [filename: string]: string },
    nodeModules: Array<string>,
    configuration: Configuration,
    baseRoute: string,
    encodings: Array<Encoding>,
    onRequest?: OnRequest
): void
```

Deletes an compilation and all its compiled files.

```typescript
public deleteCompilation(injectableName: string, compilationId: number): void
```


## License

See the [LICENSE](LICENSE.md) file for license rights and limitations (MIT).
npm package: @injectit/threejs-nodejs-exporters
Description: Nodejs package for generate threejs models
Author: injectit
Latest version: 0.0.2

# threejs-node-exporters

**threejs-nodejs-exporters** allow you load models and parse ThreeJs data structure and export them to native 3d formats based on NodeJS technology. We removed native browser dependencies and replaced them by substitutes used by NodeJS. 

## Usage

### Basic usage

```javascript
const THREE = require('three')
const NodeThreeExporter = require('@injectit/threejs-nodejs-exporters')
const fs = require('fs')

//generate cube
const geometry = new THREE.BoxGeometry( 1, 1, 1 )
const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} )
const cube = new THREE.Mesh( geometry, material )

const exporter = new NodeThreeExporter()

const onComplete = buffer => {
  // do what you want with your model ex. save
  fs.writeFileSync('./model.gltf', buffer)
}

// generate buffer
exporter.generate('gltf', cube, onComplete)
```

### Load model from url

```javascript
const THREE = require('three')
const NodeThreeExporter = require('@injectit/threejs-nodejs-exporters')

const exporter = new NodeThreeExporter()

const onLoad = model => {
  // you can do anything with model ex. change material and add to scene
  const scene = new THREE.Scene()
  model.material = new THREE.MeshBasicMaterial( {color: 0x00ff00} )
  scene.add(model)

  exporter.generate('usdz', scene, buffer=>{...})
}

exporter.load('URL', onLoad)
```

### Load model from file

```javascript
const THREE = require('three')
const NodeThreeExporter = require('@injectit/threejs-nodejs-exporters')
const fs = require('fs')

const file = fs.readFileSync('./model.obj')

const onParse = model => {
  ...
}

const exporter = new NodeThreeExporter()

exporter.parse('obj', file, onParse)
```

### API

#### `.generate(format, object, onComplete, onError)`

* **format(string)** - format of generating file, available: usdz, gltf
* **object** - Threejs Object3D
* **onComplete(func)**: callback that will be execute after buffer generate, providing buffer
* **onError(func)**: callback, execute when generating fails

#### `.load(url, onComplete, onError)`
* **url** - url to model, available files format: gltf, glb, obj, fbx, stl
* **onComplete(func)**: callback that will be execute after file load, providing loaded 3D object
* **onError(func)**: callback, execute when loading fails

#### `.load(format, buffer, onComplete, onError)`
* **format(string)** - format of parsing buffer, available: gltf, glb, obj, fbx, stl
* **buffer** - model file buffer,
* **onComplete(func)**: callback that will be execute after file parse, providing parsed 3D object
* **onError(func)**: callback, execute when parse fails

**Important! STLLoader generate and returns BufferGeometry, without materials**
npm package: @injectivelabs/alchemy-api
Description: Alchemy API Consumer.
Latest version: 0.5.2

# 🌟 Injective Protocol - Alchemy API Consumer

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/assert
Description: Asserting and validating schemas. Can be reused throughout Injective's projects.
Latest version: 0.5.3

# 🌟 Injective Protocol - Assert

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/chain-consumer
Description: Interacting with our Chain API made easy. Can be reused throughout Injective's projects.
Latest version: 0.5.7

## DEPRECATED - Please use @injectivelabs/sdk-ts

# 🌟 Injective Protocol - Chain Consumer

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/chronos-consumer
Description: Interacting with our Chronos API made easy. Can be reused throughout Injective's projects.
Latest version: 0.0.6

# 🌟 Injective Protocol - Chronos Consumer

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/cosmos-ts
Description: Cosmos related wrappers.
Latest version: 0.5.57

# 🌟 Injective Protocol - Cosmos TS

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/derivatives-consumer
Description: Derivative Trading on Injective Protocol made easy. Can be reused throughout Injective's projects.
Latest version: 0.5.6

## DEPRECATED - Please use @injectivelabs/sdk-ts

# 🌟 Injective Protocol - Derivatives API

---

## 📚 Getting Started

## 📖 Documentation

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License
npm package: @injectivelabs/dmm-consumer
Description: DMM API on Injective Protocol made easy. Can be reused throughout Injective's projects.
Latest version: 0.5.9

# 🌟 Injective Protocol - DMM Consumer

[![downloads](https://img.shields.io/npm/dm/@injectivelabs/referral-consumer.svg)](https://www.npmjs.com/package/@injectivelabs/referral-consumer)
[![npm-version](https://img.shields.io/npm/v/@injectivelabs/referral-consumer.svg)](https://www.npmjs.com/package/@injectivelabs/referral-consumer)
[![license](https://img.shields.io/npm/l/express.svg)]()

_A convenient way to consume DMM API_

---

## 📚 Installation

```bash
yarn add @injectivelabs/dmm-consumer
```

## 📖 Documentation

This package is a TypeScript wrapper around the GRPC API provided by our Injective Exchange for the referral API.

The package is split between two separate concerns, "consumers" and "transformers". With the "consumers" we are making GRPC API calls to the Injective Exchange, and with the "transformers" we are transforming the data from a protobuf message to a plain TypeScript object that can be used more conveniently.

## 📖 Example Usage

```ts

```

---

## 📜 Contribution

**Contribution guides and practices will be available once there is a stable foundation of the whole package set within the `injective-ts` repo.**

---

## ⛑ Support

Reach out to us at one of the following places!

- Website at <a href="https://injectiveprotocol.com" target="_blank">`injectiveprotocol.com`</a>
- Twitter at <a href="https://twitter.com/InjectiveLabs" target="_blank">`@InjectiveLabs`</a>

---

## 🔓 License

[![License](https://img.shields.io/:license-mit-blue.svg?style=flat-square)](https://badges.mit-license.org)
npm package: @injectivelabs/eslint-config
Description: Sharable eslint config
Author: Thomas Lee
Latest version: 1.1.8

# `@injectivelabs/eslint-config`

> Sharable eslint config

## Usage

```
// .eslintrc
{
  "extends": [
    "@injectivelabs/eslint-config"
  ]
}
```

## 🔓 License

This software is licensed under the MIT license. See [LICENSE](./LICENSE) for full disclosure.