open-index/open-npm huggingface dataset:
npm package: @nghiakvy/react-native-linphone
Description: linphone sdk
Author: nghiakvy
Latest version: 1.0.0

# react-native-linphone

linphone sdk

## Installation

```sh
npm install react-native-linphone
```

## Usage


```js
import { multiply } from 'react-native-linphone';

// ...

const result = multiply(3, 7);
```


## Contributing

See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.

## License

MIT

---

Made with [create-react-native-library](https://github.com/callstack/react-native-builder-bob)
npm package: @nghiapt/kit
Description: The 'Native Gemini' Agentic Framework. Turn your IDE into an autonomous coding partner.
Author: NghiaPT
Latest version: 1.1.1

# Antigravity Kit 🚀

> **The "Native Gemini" Agentic Framework.**
> Built to turn your IDE into an autonomous coding partner.

**Antigravity Kit** activates a suite of specialized AI Agents directly within your editor. It leverages Gemini's 2M context window to understand your entire project at once.

---

## ⚡ Quick Start

### 1. Installation

We have simplified the setup process into a single command.

Run inside your project directory:

```bash
npx @nghiapt/kit
```

This interactive wizard will:
1.  **Install Global (Recommended)**: Installs workflows globally (`~/.gemini/antigravity/global_workflows`), making them available in ALL your projects.
2.  **Install Local**: Installs workflows only into the current project's `.agent/workflows` folder.


### 2. Using Agents (The "Slash" Workflow)
Use the **Slash Command** menu in your IDE chat (type `/`) to summon specialized agents.

| Command | Agent Specialist | Task Examples |
| :--- | :--- | :--- |
| **`/orchestrator`** | **The Project Manager** | "Build a Todo App from scratch", "Refactor the auth system" |
| **`/frontend-development`** | **UI/UX Engineer** | "Create a responsive navbar", "Fix mobile layout issues" |
| **`/backend-development`** | **Backend Engineer** | "Set up a FastAPI server", "Design a Postgres schema" |
| **`/fix-bugs`** | **Debugger** | "Why is the screen white?", "Fix the API 500 error" |

---

## 🤖 "God Mode" (Auto-Automation)

To let agents code, run tests, and fix bugs without asking for permission every step:

1.  **Recommended**: Install the **Auto Accept Agent** extension (by MunKhin).
2.  **Manual**: Set **Terminal & File Edits** to `Always Allow` in your Agent settings.

> **⚠️ Warning:** Only enable these settings if you trust the agent.

---

## 📂 Architecture
- **Workflows**: 30+ Agent Personas available via slash commands.
- **Core**: Powered by Google Gemini.

## ⚠️ Credits & Disclaimer
**Inspiration**: This project acknowledges the architectural patterns from **ClaudeKit**.
**Native Implementation**: **Antigravity Kit** is a clean-room implementation written **from scratch** to optimize for Google Gemini.

**License**: MIT.
npm package: @nghiatv/eslint-config
Description: A shareable eslint configuration for projects.
Author: Nghia Than
Latest version: 1.0.2

# Eslint Config

My personal shareable eslint configuration.

## Install

```bash
npm i --save-dev eslint @nghiatv/eslint-config
```

## Usage

**`.eslintrc.js`**

### TS

```ts
module.exports = {
  extends: '@nghiatv/eslint-config',
};
```

## Extending

**`.eslintrc.js`**

```js
module.exports = {
  ignorePatterns: ['dist/**'],
  overrides: [
    {
      files: ['**/*.ts'],
      extends: ['@nghiatv/eslint-config'],
      parserOptions: {
        project: 'tsconfig.json',
        tsconfigRootDir: __dirname,
      },
    },
  ],
};
```

## Under The Hood

### `index.js`

- Plugins
  - `@typescript-eslint/eslint-plugin`
  - `eslint-plugin-prettier`
- Parser
  - `@typescript-eslint/parser`
- Extends
  - `@typescript-eslint/eslint-plugin`
  - `eslint-config-airbnb-typescript`
  - `eslint-config-prettier`
- Rules
  - [Custom Special Rules](https://github.com/prettier/eslint-config-prettier#special-rules)

## License

MIT
npm package: @nghiatv/prettier-config
Description: Nghiatv's shareable configuration for prettier (VSCode only)
Author: Nghia Than
Latest version: 1.0.3

# Prettier Config

My personal shareable prettier configuration.

## Install

```bash
npm i --save-dev prettier @nghiatv/prettier-config
```

## Usage

**`.prettierrc.js`**

```js
module.exports = "@nghiatv/prettier-config";
```

## Extending

**`.prettierrc.js`**

```js
module.exports = {
  ...require("@nghiatv/prettier-config"),
  semi: false,
};
```

## License

MIT
npm package: @nghiavuive/proxy-free
Description: TypeScript client for ProxyScrape free proxy list API
Latest version: 1.0.0

# proxy-free

TypeScript client for the ProxyScrape free proxy list API. It wraps the documented JSON endpoint, fetches data with `axios`, and gives you typed access to the proxy metadata returned by the service.

## Installation

```bash
npm install proxy-free
```

## Quick start

```ts
import { fetchProxyList } from 'proxy-free'

const { proxies } = await fetchProxyList({
  query: {
    protocol: ['http', 'https'],
    country: ['US', 'DE'],
    anonymity: 'elite',
    limit: 50,
  },
})

console.log(`Received ${proxies.length} proxies`)
console.log(`First proxy endpoint: ${proxies[0]?.proxy}`)
```

## Advanced usage

Create a reusable client if you need to tweak timeouts, base URLs, or other Axios options:

```ts
import { ProxyScrapeClient } from 'proxy-free'

const client = new ProxyScrapeClient({
  timeoutMs: 5_000,
})

const data = await client.fetchProxyList({
  params: {
    // You can add vendor-specific parameters not covered by the helper type
    user_identifier: 'demo-app',
  },
  query: {
    ssl: true,
    limit: 100,
  },
})
```

### Query helpers

`ProxyScrapeQuery` lets you set the most common filters supported by the endpoint:

- `protocol`: one or more of `http`, `https`, `socks4`, `socks5`
- `country`: ISO country codes (single string or array)
- `anonymity`: `transparent`, `anonymous`, or `elite`
- `limit` / `skip`: pagination helpers mirroring the API response fields
- `ssl`: boolean flag to only return SSL-capable proxies
- `timeout`: pass-through numeric value accepted by ProxyScrape

Anything else can be appended through the `params` option or by providing your own Axios instance.

## Type definitions

The library exports strong types for the entire JSON payload, so you can rely on autocomplete when inspecting proxy metadata:

```ts
import type { ProxyRecord } from 'proxy-free'

function formatProxy(proxy: ProxyRecord) {
  return `${proxy.protocol}://${proxy.ip}:${proxy.port} - ${proxy.ip_data.country}`
}
```

## Building

```bash
npm run build
```

This runs `tsdown`, producing dual ESM/CJS bundles and `.d.mts/.d.cts` declaration files under `dist/`.

## Testing

```bash
npm run test
```

Vitest runs completely offline thanks to the mocked Axios layer inside the test suite, so CI does not depend on the live ProxyScrape service.
npm package: @nghiaxem/pds
Description: Reference implementation of atproto Personal Data Server (PDS)
Latest version: 0.4.174

# @atproto/pds: Personal Data Server (PDS)

TypeScript reference implementation of an atproto PDS.

[![NPM](https://img.shields.io/npm/v/@atproto/pds)](https://www.npmjs.com/package/@atproto/pds)
[![Github CI Status](https://github.com/bluesky-social/atproto/actions/workflows/repo.yaml/badge.svg)](https://github.com/bluesky-social/atproto/actions/workflows/repo.yaml)

If you are interested in self-hosting a PDS, you probably want this repository instead, which has a thin service wrapper, documentation, a Dockerfile, etc: https://github.com/bluesky-social/pds

## License

This project is dual-licensed under MIT and Apache 2.0 terms:

- MIT license ([LICENSE-MIT.txt](https://github.com/bluesky-social/atproto/blob/main/LICENSE-MIT.txt) or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0, ([LICENSE-APACHE.txt](https://github.com/bluesky-social/atproto/blob/main/LICENSE-APACHE.txt) or http://www.apache.org/licenses/LICENSE-2.0)

Downstream projects and end users may chose either license individually, or both together, at their discretion. The motivation for this dual-licensing is the additional software patent assurance provided by Apache 2.0.
npm package: @nghinv/eslint-config
Description: eslint config
Author: nghinv
Latest version: 3.0.0

# @nghinv/eslint-config

> Personal recommended shareable config for eslint.

## Installation

### Use typescript
- use yarn

```bash
yarn add @nghinv/eslint-config --dev
```

- use npm

```bash
npm install -D @nghinv/eslint-config
```

### Use javascript

- use yarn

```bash
yarn add @nghinv/eslint-config@2.4.0 --dev
```

- use npm

```bash
npm install -D @nghinv/eslint-config@2.4.0
```

## Usage

In .eslintrc:

```javascript
module.exports = {
  root: true,
  extends: ['@nghinv/eslint-config'],
};
```

## Dependencies

- eslint
- @typescript-eslint/eslint-plugin
- @typescript-eslint/parser
- babel-eslint
- eslint-config-airbnb
- eslint-config-prettier
- eslint-plugin-import
- eslint-plugin-jsx-a11y
- eslint-plugin-prettier
- eslint-plugin-react
- eslint-plugin-react-hooks
- eslint-plugin-react-native
- husky
- prettier
- typescript
npm package: @nghinv/react-native-action-sheet
Description: A custom action sheet component
Author: nghinv@lumi.biz
Latest version: 1.0.9


# @nghinv/react-native-action-sheet

A custom alert component with react-native-reanimated

---


[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]

<img src="./assets/example.gif" height="600"/>

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-action-sheet
```

* Use npm

```sh
npm install @nghinv/react-native-action-sheet
```

```sh
yarn add react-native-gesture-handler react-native-reanimated react-native-safe-area-context @nghinv/react-native-icons
```

* Peer dependencies 
	- [react-native-safe-area-context](https://github.com/th3rdwave/react-native-safe-area-context)
	- [@nghinv/react-native-icons](https://github.com/nghinv-software/react-native-icons)

# How to use

1. Wrapper `ActionSheetService` in the `Root Component`

```javascript
  import { ActionSheetService } from '@nghinv/react-native-action-sheet';

  ...
  return (
    <ActionSheetService>
      <RootComponent />
    </ActionSheetService>
  );
  ...
```

2. Use `ActionSheet.show()` and `ActionSheet.hide()`

```javascript
import React from 'react';
import { View, StyleSheet, Button } from 'react-native';
import { ActionSheet } from '@nghinv/react-native-action-sheet';

export default function Example() {
  const onPress = () => {
    ActionSheet.show({
      title: 'React Native Debug Menu',
      message: 'Running JSI (<JSCRuntime@0x6000003a3ad50>)',
      bottomTitle: 'Cancel',
      zIndex: 10,
      options: [
        {
          title: 'Hello',
          autoDismiss: false,
          onPress: () => {},
        },
        {
          title: 'Good morning',
          leftIconName: 'photo',
          checked: true,
          renderRight: () => (
            <View
              style={{
                width: 40, height: 40, backgroundColor: 'red'
              }}
            />
          ),
        },
        { title: 'Good afternoon', checked: true },
      ],
    });
  };

  return (
    <View style={styles.container}>
      <Button title='Show action sheet' onPress={onPress} />
    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'skyblue'
  }
});
```

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-action-sheet.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-action-sheet
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-action-sheet.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
npm package: @nghinv/react-native-alert
Description: A custom alert component
Author: nghinv@lumi.biz
Latest version: 1.1.0


# @nghinv/react-native-alert

A custom alert component with react-native-reanimated

---

[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]


<img src="./assets/example.gif" height="600"/>

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-alert
```

* Use npm

```sh
npm install @nghinv/react-native-alert
```

```sh
yarn add react-native-gesture-handler react-native-reanimated
```

# How to use

1. Wrapper `AlertService` in the `Root Component`

```javascript
  import { AlertService } from '@nghinv/react-native-alert';

  ...
  return (
    <AlertService>
      <RootComponent />
    </AlertService>
  );
  ...
```

2. Use `Alert.alert()` and `Alert.close()`

```javascript
import React from 'react';
import { View, StyleSheet, Button } from 'react-native';
import { AlertService, Alert, AlertView, AlertTitle } from '@nghinv/react-native-alert';

export default function Example() {
  const onPress = () => {
    Alert.alert(
      title: 'Thông báo',
      message: 'Lỗi kết nối mạng vui lòng thử lại sau',
        actions: [
        { 
          text: 'Cancel', 
          titleColor: 'orange', 
          autoDismiss: false, 
          onPress: () => {} 
        },
        { text: 'Next', disabled: true },
        { text: 'OK', autoDismiss: false },
      ],
    );
  };

  return (
    <AlertService>
      <View style={styles.container}>
        <Button title='Show alert' onPress={onPress} />
      </View>
    </AlertService>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'skyblue'
  }
});
```

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-alert.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-alert
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-alert.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
npm package: @nghinv/react-native-animated
Description: React Native animated Library
Author: NghiNV
Latest version: 0.2.0

# @nghinv/react-native-animated

React Native Animated Library

---

[![CircleCI](https://circleci.com/gh/nghinv-software/react-native-animated.svg?style=svg)](https://circleci.com/gh/nghinv-software/react-native-animated)
[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]
[![PRs Welcome][prs-welcome-badge]][prs-welcome]

## Installation

```sh
yarn add @nghinv/react-native-animated
```

or 

```sh
npm install @nghinv/react-native-animated
```

```sh
yarn add react-native-reanimated
```

## Usage

```js
import { 
  springConfig, 
  timingConfig,
  colors,
  useHsv,
  useRgb,
  useVector,
  useLayoutRectangle,
  toDeg,
  toRadian,
  clamp,
  mix,
  convertUtf8,
  canvas2Polar,
  polar2Canvas,
  vec,
  vecAnimated,
} from '@nghinv/react-native-animated';
```

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-animated.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-animated
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-animated.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
[prs-welcome-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
[prs-welcome]: http://makeapullrequest.com
npm package: @nghinv/react-native-bottom-sheet
Description: A custom bottom sheet component
Author: nghinv@lumi.biz
Latest version: 1.1.3


# @nghinv/react-native-bottom-sheet

A custom alert component with react-native-reanimated

---


[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]


<img src="./assets/example.gif" height="600"/>

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-bottom-sheet
```

* Use npm

```sh
npm install @nghinv/react-native-bottom-sheet
```

```sh
yarn add react-native-gesture-handler react-native-reanimated react-native-safe-area-context @nghinv/react-native-icons
```

* Peer dependencies 
	- [react-native-safe-area-context](https://github.com/th3rdwave/react-native-safe-area-context)
	- [@nghinv/react-native-icons](https://github.com/nghinv-software/react-native-icons)

# How to use

1. Wrapper `BottomSheetService` in the `Root Component`

```javascript
  import { BottomSheetService } from '@nghinv/react-native-bottom-sheet';

  ...
  return (
    <BottomSheetService>
      <RootComponent />
    </BottomSheetService>
  );
  ...
```

2. Use `BottomSheet.show()` and `BottomSheet.hide()`

```javascript
import React from 'react';
import { View, StyleSheet, Button } from 'react-native';
import { BottomSheet } from '@nghinv/react-native-bottom-sheet';

export default function Example() {
  const onPress = () => {
    BottomSheet.show({
      bottomButton: {
        title: 'Cancel',
      },
      header: {
        title: 'Chọn thời gian',
        rightIconProps: {
          color: 'tomato',
        },
      },
      optionProps: {
        titleCenter: false,
      },
      options: [
        { title: 'What language do you want to study most?', checked: false },
        { title: 'Where did you go in the first week on your honeymoon?', checked: true },
        { title: 'banana' },
      ],
    });
  };

  return (
    <View style={styles.container}>
      <Button title='Show bottom sheet' onPress={onPress} />
    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'skyblue'
  }
});
```

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-bottom-sheet.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-bottom-sheet
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-bottom-sheet.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
npm package: @nghinv/react-native-dropdown-alert
Description: A dropdown alert component
Author: nghinv@lumi.biz
Latest version: 1.0.6


# @nghinv/react-native-dropdown-alert

A dropdown alert component with react-native-reanimated

---


[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]


<img src="./assets/example.gif" height="600"/>

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-dropdown-alert
```

* Use npm

```sh
npm install @nghinv/react-native-dropdown-alert
```

- peerDependencies

```sh
yarn add react-native-gesture-handler react-native-reanimated react-native-safe-area-context
```

- [react-native-safe-area-context](https://github.com/th3rdwave/react-native-safe-area-context)

# How to use

1. Wrapper `DropdownAlertService` in the `Root Component`

```javascript
  import { DropdownAlertService } from '@nghinv/react-native-dropdown-alert';

  ...
  return (
    <DropdownAlertService>
      <RootComponent />
    </DropdownAlertService>
  );
  ...
```

2. Use `DropdownAlert.show()` and `DropdownAlert.hide()`

```javascript
import React from 'react';
import { View, StyleSheet, Button } from 'react-native';
import { DropdownAlert } from '@nghinv/react-native-dropdown-alert';

export default function Example() {
  const onPress = () => {
    DropdownAlert.show({
      title: 'Thông báo',
      message: 'Đã kích hoạt cảnh',
      timeDismiss: 1000,
    });
    DropdownAlert.show({
      title: 'Thông báo',
      message: 'Đã kích hoạt cảnh',
      type: 'error',
    });
    DropdownAlert.show({
      title: 'Thông báo',
      message: 'Đã kích hoạt cảnh',
      type: 'info',
      // autoHide: false,
    });
  };

  return (
    <View style={styles.container}>
      <Button title='Show notification' onPress={onPress} />
    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'skyblue'
  }
});
```

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-dropdown-alert.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-dropdown-alert
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-dropdown-alert.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
npm package: @nghinv/react-native-icons
Description: A custom vector icons component
Author: nghinv@lumi.biz
Latest version: 1.0.6


# @nghinv/react-native-icons

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-icons
```

* Use npm

```sh
npm install @nghinv/react-native-icons
```

* Add library [react-native-vector-icons](https://github.com/oblador/react-native-vector-icons)

# How to use

```javascript
import React from 'react';
import { Icon } from '@nghinv/react-native-icons';

export default function Example() {
  return (
    <Icon
      size={36}
      name='photo'
      color='tomato'
      type='MaterialIcons'
    />
  );
}
```
npm package: @nghinv/react-native-loading
Description: React native loading screen
Author: nghinv@lumi.biz
Latest version: 1.0.3

# @nghinv/react-native-loading

Loading an overlay when running long tasks in the react-native application.

# Installation

## Installing the package

* Use yarn

```sh
yarn add @nghinv/react-native-loading
```

* Use npm

```sh
npm install @nghinv/react-native-loading
```

<img src="./assets/example.gif" height="600"/>

# How to use

1. Wrapper `LoadingService` in the `Root Component`

```javascript
  ...
  return (
    <LoadingService>
      <RootComponent />
    </LoadingService>
  );
  ...
```

2. Use `Spinner.show()` and `Spinner.hide()`

```javascript
import React from 'react';
import { View, StyleSheet, Button } from 'react-native';
import { Spinner, LoadingService, LoadingView } from '@nghinv/react-native-loading';

export default function Example() {
  const onPress = () => {
    Spinner.show();
    setTimeout(() => {
      Spinner.hide();
    }, 2000);
  };

  return (
    <LoadingService>
      <View style={styles.container}>
        <Button title='Show loading' onPress={onPress} />
      </View>
    </LoadingService>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: 'skyblue'
  }
});
```

- Show loading with custom property

```javascript
  ...
  onShow = () => {
    Spinner.show({ indicatorColor: 'red' });
  }
  ...
```

# Property


## LoadingView property

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| visible | `Bool` | `false` | show/hide loading |
| indicatorColor | `String` | `white` | |
| indicatorSize | `large/small` | `large` | |
| backgroundColor | `String` | `rgba(0, 0, 0, 0.4)` | |
| renderIndicator | `func` | `undefined` | Custom loading component |
| containerStyle | `ViewStyle` |  | |


## LoadingService property

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| defaultProps | `LoadingViewProperty` | | |


## Spinner property

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| show | `(params: LoadingViewProperty) => void` | | show loading when call |
| hide | `func` | | hide loading when call |
npm package: @nghinv/react-native-slider
Description: React Native slider Library
Author: NghiNV
Latest version: 0.1.0

# @nghinv/react-native-slider

React Native Slider Library use reanimated 2

---

[![CircleCI](https://circleci.com/gh/nghinv-software/react-native-slider.svg?style=svg)](https://circleci.com/gh/nghinv-software/react-native-slider)
[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]
[![PRs Welcome][prs-welcome-badge]][prs-welcome]

<p align="center">
<img src="./assets/demo.gif" width="300"/>
</p>

## Installation

```sh
yarn add @nghinv/react-native-slider
```

or 

```sh
npm install @nghinv/react-native-slider
```

- peerDependencies

```sh
yarn add react-native-gesture-handler react-native-reanimated
```

## Usage

```js
import React, { useState } from 'react';
import { View, StyleSheet } from 'react-native';
import Slider from '@nghinv/react-native-slider';

function App() {
  const [value, setValue] = useState(0);

  const onChange = useCallback((v) => {
    setValue(v);
  }, []);

  const onConfirm = useCallback((v) => {
    setValue(v);
  }, []);

  return (
    <View style={styles.container}>
      <Slider
        min={1}
        max={50}
        step={1}
        width={240}
        value={value}
        onChange={onChange}
        onConfirm={onConfirm}
      />
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    paddingHorizontal: 16,
  },
});

export default App;
```

# Property

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| min | `number` | `0` |  |
| max | `number` | `100` |  |
| step | `number` | `1` |  |
| value | `number` | `0` |  |
| animatedValue | `Animated.SharedValue<number>` | `undefined` |  |
| width | `number \| string` | `undefined` |  |
| style | `ViewStyle` | `undefined` |  |
| thumbRadius | `number` | `4` |  |
| trackSize | `number` | `2` |  |
| thumbTintColor | `string` | `white` |  |
| lowerTrackColor | `string` | `#448aff` |  |
| upperTrackColor | `string` | `#616161` |  |
| onStart | `() => void` | `undefined` |  |
| onChange | `(value: number) => void` | `undefined` |  |
| onConfirm | `(value: number) => void` | `undefined` |  |
| disabled | `boolean` | `false` |  |
| touchScale | `number` | `1.6` |  |
| hitSlop | `number` | `16` |  |
| hapticFeedback | `boolean` | `false` |  |


---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-slider.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-slider
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-slider.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
[prs-welcome-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
[prs-welcome]: http://makeapullrequest.com
npm package: @nghinv/react-native-switch
Description: React Native switch Library
Author: NghiNV
Latest version: 0.1.0

# @nghinv/react-native-switch

React Native Switch Library

---

[![CircleCI](https://circleci.com/gh/nghinv-software/react-native-switch.svg?style=svg)](https://circleci.com/gh/nghinv-software/react-native-switch)
[![Version][version-badge]][package]
[![MIT License][license-badge]][license]
[![All Contributors][all-contributors-badge]][all-contributors]
[![PRs Welcome][prs-welcome-badge]][prs-welcome]

<p align="center">
<img src="./assets/demo.png" width="300"/>
</p>

## Installation

```sh
yarn add @nghinv/react-native-switch
```

or 

```sh
npm install @nghinv/react-native-switch
```

- peerDependencies

```sh
yarn add react-native-gesture-handler react-native-reanimated
```

## Usage

```js
import React, { useState } from 'react';
import { View, Text, StyleSheet } from 'react-native';
import Switch from '@nghinv/react-native-switch';

function App() {
  const [enable, setEnable] = useState(true);

  return (
    <View style={styles.container}>
      <View style={styles.row}>
        <Text style={styles.title}>Switch</Text>
        <Switch 
          value={enable} 
          onChange={(value) => setEnable(value)} 
        />
      </View>
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
  },
  row: {
    flexDirection: 'row',
    alignItems: 'center',
    justifyContent: 'space-between',
    padding: 16,
  },
  title: {
    fontSize: 16,
  },
});

export default App;
```

# Property

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| size | `Number` | `27` |  |
| thumbColor | `String` | `white` |  |
| trackColor | `TrackColorProperty` |  |  |
| disabled | `Bool` | `false` |  |
| value | `Bool` | `false` |  |
| onChange | `(value: boolean) => void` | `undefined` |  |
| style | `ViewStyle` | `undefined` |  |
| progress | `Animated.SharedValue<number>` | `undefined` |  |


## TrackColorProperty

| Property | Type | Default | Description |
|----------|:----:|:-------:|-------------|
| false | `String` | `rgba(120, 120, 120, 0.3)` |  |
| true | `String` | `#31D158` |  |

---
## Credits

- [@Nghi-NV](https://github.com/Nghi-NV)

[version-badge]: https://img.shields.io/npm/v/@nghinv/react-native-switch.svg?style=flat-square
[package]: https://www.npmjs.com/package/@nghinv/react-native-switch
[license-badge]: https://img.shields.io/npm/l/@nghinv/react-native-switch.svg?style=flat-square
[license]: https://opensource.org/licenses/MIT
[all-contributors-badge]: https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square
[all-contributors]: #contributors
[prs-welcome-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
[prs-welcome]: http://makeapullrequest.com
npm package: @ngho/core
Description: ## Installation
Author: Duy Hoang
Latest version: 0.1.4

# core

## Installation

To install this library, run:

```bash
$ npm install @ngho/core --save
```

## Consuming your library

Once you have published your library to npm, you can import your library in any Angular application by running:

```bash
$ npm install @ngho/core
```

and then from your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import your library
import { SampleModule } from '@ngho/core';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify your library as an import
    LibraryModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once your library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use your library component in app.component.html -->
<h1>    
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Duy Hoang](mailto:nduyhoang@hotmail.com)
npm package: @ngho/mto-api
Description: ## Installation
Author: Duy Hoang
Latest version: 0.1.1

# mto-api

## Installation

To install this library, run:

```bash
$ npm install @ngho/mto-api --save
```

## Consuming your library

Once you have published your library to npm, you can import your library in any Angular application by running:

```bash
$ npm install @ngho/mto-api
```

and then from your Angular `AppModule`:

```typescript
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import your library
import { SampleModule } from '@ngho/mto-api';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,

    // Specify your library as an import
    LibraryModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
```

Once your library is imported, you can use its components, directives and pipes in your Angular application:

```xml
<!-- You can now use your library component in app.component.html -->
<h1>
  {{title}}
</h1>
<sampleComponent></sampleComponent>
```

## Development

To generate all `*.js`, `*.d.ts` and `*.metadata.json` files:

```bash
$ npm run build
```

To lint all `*.ts` files:

```bash
$ npm run lint
```

## License

MIT © [Duy Hoang](mailto:nduyhoang@hotmail.com)
npm package: @ngiapak/memory
Description: Memory core for Ngiapak, can be used as a standalone
Author: Vito Chin
Latest version: 1.0.0

@ngiapak-memory
===============

Memory component of ngiapak.

Usage
=====

```
import * as path from "path";
import * as Memory from "@ngiapak/memory";

let storageDir = path.resolve('./');
let memoryInstance = new Memory(storageDir);

memoryInstance.now("ate", "burger");
console.log(memoryInstance.when("ate", "burger"));
console.log(memoryInstance.recent("ate", "burger"));
```