open-index/open-npm huggingface dataset:
npm package: @lakuna/color
Description: A library for various color-related operations.
Author: Travis Martin
Latest version: 1.2.1

[![Test](https://github.com/Lakuna/color/actions/workflows/test.yml/badge.svg)](https://github.com/Lakuna/color/actions/workflows/test.yml)

# Color

A library for various color-related operations.

Documentation is automatically generated and uploaded to [the website](https://color.lakuna.pw/).

The source code can be found on [the GitHub repository](https://github.com/Lakuna/color).

Color name dictionaries are based on ["Color-Name Dictionaries"](https://people.csail.mit.edu/jaffer/Color/Dictionaries) by Aubrey Jaffer (MIT CSAIL).
npm package: @lakuna/react-canvas
Description: A React canvas element with a built-in animation.
Author: Travis Martin
Latest version: 2.0.7

[![Test](https://github.com/Lakuna/react-canvas/actions/workflows/test.yml/badge.svg)](https://github.com/Lakuna/react-canvas/actions/workflows/test.yml)

# React Canvas

A React canvas element with a built-in animation.

Documentation is automatically generated and uploaded to [the website](https://react-canvas.lakuna.pw/).

The source code can be found on [the GitHub repository](https://github.com/Lakuna/react-canvas).
npm package: @lakuna/ugl
Description: A lightweight WebGL2 library.
Author: Travis Martin
Latest version: 27.0.0

[![Test](https://github.com/Lakuna/ugl/actions/workflows/test.yml/badge.svg)](https://github.com/Lakuna/ugl/actions/workflows/test.yml)

# μGL

A lightweight WebGL2 library. Includes a variety of classes which are useful for developing two- and three-dimensional games, animations, and simulations.

Documentation is automatically generated and uploaded to [the website](https://ugl.lakuna.pw/).

The source code can be found on [the GitHub repository](https://github.com/Lakuna/ugl).

A complete introductory guide to WebGL2 with μGL is available on [my website](https://www.lakuna.pw/a/webgl).
npm package: @lakuna/umath
Description: A lightweight math library.
Author: Travis Martin
Latest version: 4.0.5

[![Test](https://github.com/Lakuna/umath/actions/workflows/test.yml/badge.svg)](https://github.com/Lakuna/umath/actions/workflows/test.yml)

# μMath

A lightweight math library.

Documentation is automatically generated and uploaded to [the website](https://umath.lakuna.pw/).

The source code can be found on [the GitHub repository](https://github.com/Lakuna/umath).

## Linear Algebra API

In addition to exporting convenience classes representing a variety of linear algebra-related data types, each such type also has its own module
that exports individual functions. For example, a two-by-two matrix can be imported in two different ways:

```ts
import { Matrix2 } from "@lakuna/umath";
```

```ts
import Matrix2 from "@lakuna/umath/Matrix2";
```

Using the convenience class, multiplying two two-by-two matrices would look like this:

```ts
import { Matrix2 } from "@lakuna/umath";

const a = Matrix2.fromValues(0, 1, 2, 3);
const b = Matrix2.fromValues(4, 5, 6, 7);
const c = a.multiply(b);
```

Using the raw functions, it could instead look like this:

```ts
import { multiply } from "@lakuna/umath/Matrix2";

const a = [0, 1, 2, 3];
const b = [4, 5, 6, 7];
const c = multiply(a, b, [0, 0, 0, 0]);
```

The majority of the algorithms used in the linear algebra API are adapted from [glMatrix](https://github.com/toji/gl-matrix/).
npm package: @lakuna/uscene
Description: A scene graph implementation using μMath.
Author: Travis Martin
Latest version: 3.0.0

[![Test](https://github.com/Lakuna/uscene/actions/workflows/test.yml/badge.svg)](https://github.com/Lakuna/uscene/actions/workflows/test.yml)

# μScene

A scene graph implementation using μMath.

Documentation is automatically generated and uploaded to [the website](https://uscene.lakuna.pw/).

The source code can be found on [the GitHub repository](https://github.com/Lakuna/uscene).
npm package: @lakutata-component/datastore
Description: Lakutata Datastore Component
Author: alex.ma
Latest version: 1.0.35

<div style="text-align:center">
	<img src="https://gitee.com/nnxr/lakutata-component-datastore/raw/master/assets/lakutata-banner.png" />
</div>

[![NPM Version](https://img.shields.io/npm/v/@lakutata-component/datastore?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/datastore)
[![NODE Version](https://img.shields.io/node/v/@lakutata-component/datastore?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/datastore)
[![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata-component/datastore/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata-component/datastore)
[![NPM Download](https://img.shields.io/npm/dm/@lakutata-component/datastore?style=flat-square)](https://npmjs.org/package/@lakutata-component/datastore)

## Quickstart

#### Step 1: Configure datastore component

```typescript
const app = await createApp({
    id: 'test.app',
    name: 'tester',
    components: {
        datastore: {
            class: DatastoreComponent,
            dataDir: path.resolve(__dirname, '../../data')
        }
    }
})
```

#### Step 2: Get datastore component

```typescript
const datastore: Datastore = app.Components.get<DatastoreComponent>('datastore')
```

#### Step 3: Use it

```typescript
await datastore.insert(metaData, dataObject)
await datastore.find(metaData, {
    conditions: {test: {$eq: true}},
    from: new Date(),
    to: new Date(),
    skip: 0,
    limit: 128,
    sort: {test: 'ASC'}
})
await datastore.list(metaData)
```

> @lakutata/core required.

## How to Contribute

Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-component-datastore/issues) for
bug reports or suggestions first.

## License

[MIT](LICENSE)
npm package: @lakutata-component/db
Description: Lakutata Framework Database Component
Author: alex.ma
Latest version: 0.0.12
Deprecated: This package is only support old version Lakutata framework

# @lakutata-component/db

[![NPM Version](https://img.shields.io/npm/v/@lakutata-component/db?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/db)
[![NODE Version](https://img.shields.io/node/v/@lakutata-component/db?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/db)
[![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata-component/db/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata-component/db)
[![NPM Download](https://img.shields.io/npm/dm/@lakutata-component/db?style=flat-square)](https://npmjs.org/package/@lakutata-component/db)

## Quickstart

### Example

    createApp({
        id: 'com.lakutata.test.db',
        name: 'db component test',
        components: {
            db: {
                class: SQLite,
                database: 'lakutata',
                entities: ['src/tests/entities/**/*']
            }
        },
        bootstraps: [
            new SQLiteBootstrap()
        ]
    })

TODO

> Need npm package @lakutata/core

## Documentations

- TODO

## How to Contribute

Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-db-component/issues) for bug reports or suggestions first.

## License

[MIT](https://gitee.com/nnxr/lakutata-db-component/blob/master/LICENSE)
npm package: @lakutata-component/typeorm
Description: Lakutata TypeOrm Component
Author: alex.ma
Latest version: 1.1.19

<div style="text-align:center">
	<img src="https://gitee.com/nnxr/lakutata-component-typeorm/raw/master/assets/lakutata-banner.png" />
</div>

[![NPM Version](https://img.shields.io/npm/v/@lakutata-component/typeorm?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/typeorm)
[![NODE Version](https://img.shields.io/node/v/@lakutata-component/typeorm?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-component/typeorm)
[![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata-component/typeorm/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata-component/typeorm)
[![NPM Download](https://img.shields.io/npm/dm/@lakutata-component/typeorm?style=flat-square)](https://npmjs.org/package/@lakutata-component/typeorm)

## Quickstart

#### Step 1: Configure typeorm component

    const app = await createApp({
            id: 'test.app',
            name: 'tester',
            components: {
                typeorm: {
                    class: TypeOrmComponent,
                    options: {
                        type: 'mysql',
                        host: 'localhost',
                        port: 3306,
                        username: 'user',
                        password: 'passwd',
                        database: 'database',
                        synchronize: true,
                        entities: [
                            `${path.resolve(__dirname, './entities/*')}`
                        ]
                    } as MysqlConnectionOptions
                }
            }
        })

#### Step 2: Get typeorm component

    const typeorm: TypeOrmComponent = app.Components.get<TypeOrmComponent>('typeorm')

#### Step 3: Use it

    typeorm.getRepository(...)
    typeorm.getMongoRepository(...)
    typeorm.transaction(...)
    typeorm.query(...)
    ...

> @lakutata/core required.

## Documentations

See [Typeorm official documents](https://github.com/typeorm/typeorm/tree/master/docs)

## How to Contribute

Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-component-typeorm/issues) for bug reports or suggestions first.

## License

[MIT](LICENSE)
npm package: @lakutata-module/desktop
Description: Lakutata Desktop Module
Author: alex.ma
Latest version: 0.0.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

<div style="text-align:center">
	<img src="https://gitee.com/nnxr/lakutata-module-desktop/raw/master/assets/lakutata-banner.png" />
</div>

[![NPM Version](https://img.shields.io/npm/v/@lakutata-module/desktop?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-module/desktop)
[![NODE Version](https://img.shields.io/node/v/@lakutata-module/desktop?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata-module/desktop)
[![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata-module/desktop/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata-module/desktop)
[![NPM Download](https://img.shields.io/npm/dm/@lakutata-module/desktop?style=flat-square)](https://npmjs.org/package/@lakutata-module/desktop)

## Quickstart

Follow the commands listed below.

```typescript
createApp({
    id: 'test.app',
    name: 'tester',
    modules: {
        test: {
            class: Desktop,
            controllers: [
                `${path.resolve(__dirname, './controllers')}/**/*`
            ],
            view: path.resolve(__dirname, './views')
            // view: 'https://www.baidu.com'
        }
    }
}).then(app => {
    const testModule: Desktop = app.Modules.get<Desktop>('test')
}).catch(e => {
    console.error(e)
})
```

> Node.js >= 12.22.1 required.

## Documentations

### DesktopOperationInterface

- DOI (DesktopOperationInterface)

```typescript
const {DOI} = require('@lakutata-module/desktop')
DOI.invoke({test:true})
```

## How to Contribute

Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-module-desktop/issues) for bug reports or suggestions first.

## License

[MIT](LICENSE)
npm package: @lakutata/cli
Description: Lakutata CLI tool
Author: myq1991
Latest version: 2.17.1

<div align="center">

![lakutata](https://socialify.git.ci/lakutata/lakutata/image?description=1&descriptionEditable=An%20IoC-based%20universal%20application%20framework&font=Source%20Code%20Pro&forks=1&language=1&logo=https%3A%2F%2Fraw.githubusercontent.com%2Flakutata%2Flakutata%2Fmain%2Fassets%2Flogo.svg&name=1&pattern=Circuit%20Board&stargazers=1&theme=Auto)

</div>

<div align="center">

![node-lts](https://img.shields.io/node/v-lts/lakutata?style=for-the-badge&logo=nodedotjs&color=rgb(128%2C189%2C65))
![npm](https://img.shields.io/npm/v/lakutata?style=for-the-badge&logo=npm&color=rgb(128%2C189%2C65))
![npm](https://img.shields.io/npm/dm/lakutata?style=for-the-badge&logo=npm&color=rgb(128%2C189%2C65))
![NPM](https://img.shields.io/npm/l/lakutata?style=for-the-badge&logo=github&color=rgb(128%2C189%2C65))
![Codacy grade](https://img.shields.io/codacy/grade/0f16d1c355494415ad7733f8f22f7d36?style=for-the-badge&logo=codacy)

</div>

## 💫 Description

Lakutata is a generic development framework written in TypeScript and designed with IoC principles. Its main objective
is to provide a universal, efficient, and stable development framework. The design goals of Lakutata are not limited to
web application development; it aims to serve as a foundational framework for desktop applications, embedded systems
applications, and web applications. The framework primarily adopts an OOP (Object-Oriented Programming) approach and
encapsulates functionalities such as subprocesses, threads, permission management, and database ORM, enabling the
framework to be used out of the box.

In addition, Lakutata also supports the integration of third-party libraries into the application, allowing developers
to freely encapsulate and call third-party modules using Lakutata's dependency injection.

## ✨ Getting started

- Install lakutata cli tool
```shell
npm install -g @lakutata/cli
```
- Show available commands
```shell
lakutata --help
```

## 🌎 License

Lakutata is [MIT licensed](LICENSE).
npm package: @lakutata/core
Description: Lakutata Framework Core
Author: alex.ma
Latest version: 1.0.60

<div style="text-align:center">
	<img src="https://gitee.com/nnxr/lakutata-core/raw/master/assets/lakutata-banner.png" />
</div>

[![NPM Version](https://img.shields.io/npm/v/@lakutata/core?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata/core)
[![NODE Version](https://img.shields.io/node/v/@lakutata/core?color=informational&style=flat-square)](https://npmjs.org/package/@lakutata/core)
[![Known Vulnerabilities](https://snyk.io/test/npm/@lakutata/core/badge.svg?style=flat-square)](https://snyk.io/test/npm/@lakutata/core)
[![NPM Download](https://img.shields.io/npm/dm/@lakutata/core?style=flat-square)](https://npmjs.org/package/@lakutata/core)

## TODO

- Write document for Lakutata

## Features

- TODO

## Quickstart

Follow the commands listed below.

```bash
$ mkdir example && cd example
$ TODO
```

> Node.js >= 12.22.1 required.

## Documentations

- TODO

## How to Contribute

Please let us know how can we help. Do check out [issues](https://gitee.com/nnxr/lakutata-core/issues) for bug reports or suggestions first.

## License

[MIT](LICENSE)
npm package: @lakutata/dbus
Description: Lakutata DBus SDK
Author: myq1991
Latest version: 2.3.1

<div align="center">

![lakutata](https://socialify.git.ci/lakutata/lakutata/image?description=1&descriptionEditable=An%20IoC-based%20universal%20application%20framework&font=Source%20Code%20Pro&forks=1&language=1&logo=https%3A%2F%2Fraw.githubusercontent.com%2Flakutata%2Flakutata%2Fmain%2Fassets%2Flogo.svg&name=1&pattern=Circuit%20Board&stargazers=1&theme=Auto)

</div>

<div align="center">

![node-lts](https://img.shields.io/node/v-lts/lakutata?style=for-the-badge&logo=nodedotjs&color=rgb(128%2C189%2C65))
![npm](https://img.shields.io/npm/v/lakutata?style=for-the-badge&logo=npm&color=rgb(128%2C189%2C65))
![npm](https://img.shields.io/npm/dm/lakutata?style=for-the-badge&logo=npm&color=rgb(128%2C189%2C65))
![NPM](https://img.shields.io/npm/l/lakutata?style=for-the-badge&logo=github&color=rgb(128%2C189%2C65))
![Codacy grade](https://img.shields.io/codacy/grade/0f16d1c355494415ad7733f8f22f7d36?style=for-the-badge&logo=codacy)

</div>

## 💫 Description

Lakutata is a generic development framework written in TypeScript and designed with IoC principles. Its main objective
is to provide a universal, efficient, and stable development framework. The design goals of Lakutata are not limited to
web application development; it aims to serve as a foundational framework for desktop applications, embedded systems
applications, and web applications. The framework primarily adopts an OOP (Object-Oriented Programming) approach and
encapsulates functionalities such as subprocesses, threads, permission management, and database ORM, enabling the
framework to be used out of the box.

In addition, Lakutata also supports the integration of third-party libraries into the application, allowing developers
to freely encapsulate and call third-party modules using Lakutata's dependency injection.

## ✨ Getting started

- Install lakutata DBus SDK
```shell
npm install @lakutata/dbus
```

## 🌎 License

Lakutata is [MIT licensed](LICENSE).