open-index/open-npm huggingface dataset:
npm package: @gact/css
Description: Framework-agnostic CSS-in-JS
Author: Mateusz Okon
Latest version: 0.0.0

# css

![CircleCI](https://img.shields.io/circleci/build/github/gactjs/css?style=for-the-badge)
![Coveralls github](https://img.shields.io/coveralls/github/gactjs/css?style=for-the-badge)
![GitHub](https://img.shields.io/github/license/gactjs/css?style=for-the-badge)
![npm](https://img.shields.io/npm/v/@gact/css?style=for-the-badge)
![npm bundle size](https://img.shields.io/bundlephobia/min/@gact/css?style=for-the-badge)
npm package: @gact/history
Description: Enhances `window.history` with the ability to subscribe to location changes.
Author: Mateusz Okon
Latest version: 0.0.0-rc.2

# history

![CircleCI](https://img.shields.io/circleci/build/github/gactjs/history?style=for-the-badge)
![Coveralls github](https://img.shields.io/coveralls/github/gactjs/history?style=for-the-badge)
![GitHub](https://img.shields.io/github/license/gactjs/history?style=for-the-badge)
![npm](https://img.shields.io/npm/v/@gact/history?style=for-the-badge)
![npm bundle size](https://img.shields.io/bundlephobia/min/@gact/history?style=for-the-badge)
npm package: @gact/key
Description: A library to generate the maximally efficient series of unique keys for a given alphabet.
Author: Mateusz Okon
Latest version: 0.0.0-rc.1

# key

![CircleCI](https://img.shields.io/circleci/build/github/gactjs/key?style=for-the-badge)
![Coveralls github](https://img.shields.io/coveralls/github/gactjs/key?style=for-the-badge)
![GitHub](https://img.shields.io/github/license/gactjs/key?style=for-the-badge)
![npm](https://img.shields.io/npm/v/@gact/key?style=for-the-badge)
![npm bundle size](https://img.shields.io/bundlephobia/min/@gact/key?style=for-the-badge)
npm package: @gact/react-router
Description: Declarative routing for React
Author: Mateusz Okon
Latest version: 0.0.0-rc.2

# react-router

![CircleCI](https://img.shields.io/circleci/build/github/gactjs/react-router?style=for-the-badge)
![Coveralls github](https://img.shields.io/coveralls/github/gactjs/react-router?style=for-the-badge)
![GitHub](https://img.shields.io/github/license/gactjs/react-router?style=for-the-badge)
![npm](https://img.shields.io/npm/v/@gact/react-router?style=for-the-badge)
![npm bundle size](https://img.shields.io/bundlephobia/min/@gact/react-router?style=for-the-badge)
npm package: @gadaco/iot-widgets
Description: iot widgets
Latest version: 0.11.11

# @gadaco/iot-widgets

[![Published on npm](https://img.shields.io/npm/v/@gadaco/iot-widgets)](https://www.npmjs.com/package/@gadaco/iot-widgets)

A collection of web components that make your life less painful.

## Install
```bash
npm install @gadaco/iot-widgets
```
or
```bash
yarn add @gadaco/iot-widgets
```

## Create new Widget or Component

```
yarn plop widget Foo g-foo
yarn plop components Bar HTMLDivElement div g-bar
```

## Code Analysis
### Count line
```
cloc --fullpath \
 --not-match-d='(node_modules|dist|plop_templates)' \
 --not-match-f='(plopfile.mjs|.dependency-cruiser.cjs)' \
 --exclude-list-file=notcount .
```
npm package: @gadcoder/whatsapp-gateway
Description: WhatsApp runtime library for inbound/outbound messaging via BullMQ
Latest version: 1.0.0

# WhatsApp Messaging Runtime

A simple runtime library built on top of `whatsapp-web.js`:

- collects inbound WhatsApp messages
- normalizes and enqueues them into BullMQ queues
- consumes an outbound BullMQ command queue and sends WhatsApp messages
- handles graceful shutdown

## Features

- `whatsapp-web.js` client lifecycle/auth/QR handling
- Inbound message deduplication across `message` and `message_create`
- BullMQ queues for inbound message fan-out and outbound command processing
- `pino` logging
- Process signal handler helpers
- No filtering (all inbound messages are processed)

## Example

```ts
import { WhatsAppMessagingRuntime } from '@gadcoder/whatsapp-gateway';

const runtime = new WhatsAppMessagingRuntime({
  whatsapp: {},
  redis: { url: 'redis://localhost:6379' },
  queues: {
    inboundBase: 'whatsapp.messages.incoming',
    outboundCommands: 'whatsapp.messages.outbound.commands',
  },
  dedupe: { windowMs: 600_000 },
  bullmq: {
    prefix: 'wm',
    outboundWorkerConcurrency: 1,
    inboundJobOptions: {
      removeOnComplete: 1000,
      removeOnFail: 5000,
    },
  },
  logging: { enableConsoleQr: true, level: 'info' },
});

runtime.attachProcessSignalHandlers();
await runtime.start();
```

## Outbound Command Queue Payload (`BullMQ job.data`)

```json
{
  "chatId": "1234567890@c.us",
  "content": "hello from bullmq"
}
```

## Inbound Queue Names

The runtime enqueues inbound messages into queues named by message kind:

- `whatsapp.messages.incoming.text`
- `whatsapp.messages.incoming.image`
- `whatsapp.messages.incoming.video`
- `whatsapp.messages.incoming.audio`
- `whatsapp.messages.incoming.document`
- `whatsapp.messages.incoming.other`
npm package: @gaddario98/capacitor-mapbox-navigation
Description: Capacitor Plug In for Mapbox navigation
Author: Giosuè Addario
Latest version: 1.0.1

# capacitor-mapbox-navigation

Capacitor Plug In for Mapbox navigation

## Install

```bash
npm install capacitor-mapbox-navigation
npx cap sync
```

## API

<docgen-index>

* [`startNavigation(...)`](#startnavigation)
* [`controlPermission(...)`](#controlpermission)
* [Interfaces](#interfaces)

</docgen-index>

<docgen-api>
<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->

### startNavigation(...)

```typescript
startNavigation(options: { stops: stop[]; accessToken: string; }) => Promise<void>
```

| Param         | Type                                                 |
| ------------- | ---------------------------------------------------- |
| **`options`** | <code>{ stops: stop[]; accessToken: string; }</code> |

--------------------


### controlPermission(...)

```typescript
controlPermission(options: { accessToken: string; }) => Promise<void>
```

| Param         | Type                                  |
| ------------- | ------------------------------------- |
| **`options`** | <code>{ accessToken: string; }</code> |

--------------------


### Interfaces


#### stop

| Prop            | Type                |
| --------------- | ------------------- |
| **`latitude`**  | <code>number</code> |
| **`longitude`** | <code>number</code> |

</docgen-api>
npm package: @gaddi/cli
Description: `@jiang-30/cli` 是 [whirls-admin](https://whirls.jiangbo.fun) 项目的脚手架和代码生成工具
Author: jiang-30
Latest version: 0.0.1-alpha.1

`@jiang-30/cli` 是 [whirls-admin](https://whirls.jiangbo.fun) 项目的脚手架和代码生成工具

## 安装

```bash
pnpm install --global @jiang-30/cli
```

## 命令

### 创建项目

```bash
whilrs init <project_name>
```

### 代码生成

```bash
whilrs generate
```

## TODO

- [ ] 功能选择
- [ ] generate

## Module

✔ Project name（项目名）: toolsdog
✔ Add TypeScript（添加 TS）? : No
✔ Add JSX Support（添加 JSX 支持）? : No
✔ Add Vue Router for Single Page Application development（添加 Vue-router）? : Yes
✔ Add Pinia for state management（添加状态管理 Pinia）? : Yes
✔ Add Vitest for Unit testing（为单元测试添加 Vitest）? : No
✔ Add Cypress for both Unit and End-to-End testing（为单元测试与端到端测试添加 Cypress）? : No
✔ Add ESLint for code quality（为代码质量添加 ESLint）? : Yes
✔ Add Prettier for code formatting（为代码格式添加 Prettier）? : Yes
npm package: @gaddi/components
Description: vue element-plus datacom组件
Author: jiang-30
Latest version: 0.0.1-alpha.32

## TODO

- info query 参数未正常携带
- modelKey = id
- fetch dict 过期时间， 要不然数据修改后不能重新加载
- 主动关闭弹窗
- crud deleteHandler 参数不正确
- api

## 依赖

- vue@3.3.4
- element-plus@2.3.8
- @element-plus/icons-vue@2.1.0
- @vueuse/core@9.13.0
- axios@1.5.0
- lodash-es@4.17.21
- @types/lodash-es@4.17.9
- string-template@1.0.0
- @types/string-template@1.0.2

## 思路

- 数据结构的组装
- 组件列表的选择
- 组件的拖拽处理
- 组件的属性配置
- 请求的处理
- 下拉选项数据的处理
- table 组件的设计
- 按钮与弹窗的处理
- 弹窗与表格数据的联动
- 自定义插槽

## CRUD

快速实现 CRUD 功能 DCrud、DForm、DInfo

## 指令

### authorize

按钮权限， 权限列表通过 setPermissions 来设置。

### resize

元素尺寸变化

### preview

- word(docx): mammoth、docx-preview
- powerpoint(ppt): pptxjs
- excel(zlsx): sheetjs、handsontable、exceljs
- pdf(pdf): pdfjs pdfjs-dist
- img(): v-viewer、PhotoSwipe
npm package: @gaddiel.gomez/lit-text
Description: A LitElement component for rendering dynamic HTML tags.
Author: Your Name
Latest version: 1.0.2

# lit-text Component

`lit-text` is a lightweight web component built using the Lit library. This component allows you to dynamically create HTML elements with customizable tags and content.

## Installation

To use the `lit-text` component in your project, you can install it via npm:

```bash
npm install @your-username/lit-text
```

## Usage

Once installed, you can import and use the `lit-text` component in your HTML or JavaScript files.

### JavaScript/TypeScript Example

```javascript
import '@your-username/lit-text';

// Now you can use the component in your HTML
```

### HTML Example

```html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Lit Text Example</title>
    <script type="module">
        import '@your-username/lit-text';
    </script>
</head>
<body>
    <lit-text tag-html="h1" content="Hello, World!"></lit-text>
    <lit-text tag-html="p" content="This is a paragraph."></lit-text>
</body>
</html>
```

### Programmatic Usage

```javascript
import '@your-username/lit-text';

const litTextElement = document.createElement('lit-text');
litTextElement.setAttribute('tag-html', 'p');
litTextElement.content = 'This is a paragraph.';
document.body.appendChild(litTextElement);
```

## Properties

- `tagHtml`: The tag name to be created (e.g., `h1`, `p`, `div`).
- `content`: The content inside the created tag.

## Development

To build the component for distribution, use the following command:

```bash
npm run build
```

Make sure to have the necessary build tools configured in `vite.config.js`.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue for any suggestions or improvements.
npm package: @gadeoli/js-helpers-library
Description: Some simple JS functions in one place
Author: gadeoli
Latest version: 0.2.6

# JS-mix-functions

Some simple JS functions in one place

## Functions

- common  
  - copyToClipboard (better supportted browser copy to clipboard - text)  
  - getQueryStringParamByName (simple extract param from a given url - default url is used if none passed)  
  - justNumbersAndLetters  
  - reorderArrayItem  (reorder an array item moving all the others)  
  - replaceManyStr  
  - searchManyInArray (check if a item of array B belongs to array A, no object itens supported)  
  - secureJSONStringify (secure stringify - avoid undefined errors)  

- files
  - downloadBase64File  
  - downloadBlobFile  
  - base64StringtoFile  
  - extractFileMimeFromBase64  
  - extractFileExtentionFromBase64  
  - extractFileNameFromDisposition    
  - getExtensionByMimeType  
  - image64toCanvasRef   
  - fixRealSize  
  - getIntlIdFromErrorCode    
  - validateFile  
  - resizeImgFromBase64  
  - exportToCsv  
  - saveFile  
  - getNewSizesFromImgSrc  
  - binaryToOctet  
  - readFileURL  

- fileBuffer  
  - readFileURL   

- styles  
  - handleCssClassnames  

- time  
  - addInMinutes  (add minutes in a date)  
  - diffInMinutes (from 2 dates)  
  - diffInSeconds (from 2 dates)  


## Use

```
import {functionName} from '@gadeoli/js-helpers-library';
```

## How to maintain

1. Clone  
2. NVM use 22.13.1 (node 22.13.1 / npm 10.9.2)  
3. npm i  
4. make changes  
5. git add / git commit / git push  
6. npm run publish (custom command)  

## Sources
- None source informed, but most of the functions come from (or are based from) online foruns (stackoverflow and others)
npm package: @gadeoli/rjs-component-library-themed
Description: A first try of doing: a reactjs component library with theme support
Author: gadeoli
Latest version: 0.2.52

# RJS Component Library Themed

(A test for now) A reactjs component library with a custom theme support by default. It's just a light / dark support with possibility to choose and change colors from both themes. Font (font family) and font size are present, but not fully implemented.


## Components

ThemeHandler    
Button   
Card && CardContent && CardToggle  
Checkbox  
CheckboxMulti  
Container  
FormGroup  
ImageContainer   
Input  
InputColor
Jumbotron     
Label  
Loading  
MultiForm  
P  
Radio  
Range  
RadioMulti   
Select  
SelectAsync   
SelectCreatable  
Span   
Spinner  
SpinnerCoin  
SpinnerDots  
SpinnerDotsCircle   
SpinnerRipple   
SpinnerView   
Tabs  
Textarea    
TitleH1  
TitleHn   
Toggle  
Tooltip  


## Sources

[source I](https://dev.to/alexeagleson/how-to-create-and-publish-a-react-component-library-2oe)  
[source II](https://dev.to/siddharthvenkatesh/component-library-setup-with-react-typescript-and-rollup-onj)  
[source III - Spinners](https://loading.io/css/)  
[source IV - Range](https://codepen.io/ibaslogic/pen/zYMJZaQ)  


## ToDO

- Upgrade stories  


## ToFix

- CardToggle Initial Blink


## Release Notes

- 0.2.0: Upgraded dependencies; MultiForm' & Tabs' header changed;  


## Testing

```
npm run test  
```


## Storybook ( not properly configured )

```
npm run sb  
```


## Installing

```
//install (remember to check the peer dependencies)  
npm i @gadeoli/rjs-component-library-themed  
```


## How to maintain (Dev with bad memory)

1. Clone  
2. NVM use 22.13.1 (node 22.13.1 / npm 10.9.2)  
3. npm i  
4. make changes  
5. git add / git commit / git push  
6. npm run publish (custom command)


## Example
- Check /components/Test/App4Text.tsx  
- You can than implement your logic, using dinamic values (store, api), custom initial mode etc.
npm package: @gadeoli/rjs-component-library-themed-extra
Description: A first try of doing: a themed library - with extra component than default library
Author: gadeoli
Latest version: 0.0.2

# RJS Component Library Themed Extra

(A test for now) This is a component-library-themed to extend @gadeoli/rjs-component-library-themed with unusual components.  

## Components

- ImageEditor (React state based) (Not exported) - same from react-canvas-editor with some extra action/tools included by chatgpt. There are several problems, multiple are related to bad state control   

- CanvasEditor (React ref based) - Most code are from GPT *This is a 2 shoot to fix ImageEditor bad state control  

## Sources

(Don't use the links bellow. Search by yourself is always a saffer practice!)  
[source I - npm react-photo-editor](https://www.npmjs.com/package/react-photo-editor) - Base to create photo editor hook  
[source II - ChatGPT](https://chatgpt.com/) - Used to implement multiple functions in Editors code

## ToDO

- Upgrade stories  

## Release Notes
 

## Testing

```
npm run test  
```

## Storybook ( not properly configured )

```
npm run sb  
```

## Installing

```
//install (remember to check the peer dependencies)  
```


## How to maintain

1. Clone  
2. NVM use 22.13.1 (node 22.13.1 / npm 10.9.2)  
3. npm i  
4. make changes  
5. git add / git commit / git push  
6. npm run publish (custom command)


## Example
npm package: @gadeoli/rjs-hooks-library
Description: Some hooks for reactJS apps in one place
Author: gadeoli
Latest version: 0.2.12

# RJS Hooks Library

Some (almost all) hooks has been copied from internet foruns. If necessary look from source info to check who created the hook.

## Hooks 

- useCabinet (A boolean array control like a file cabinet)  
- useElementSize (Get element sizes using ref)   
- useGhostInFirstRender (A negative boolean value that is setted positive after first render and a small delay)  
- useHover (control when a element is hovererd using ref)  
- useImagePreloader  
- useInViewPort  
- useOnClickOutside (Listen when clicked outside component using ref)      
- useOnInfiniteScrollTrigger (Trigger a function when "reffed" element shows up)    
- useOnPressKey (An event handler to trigger an action by key press using ref)  
- usePersistedState (An option to persist state in local storage)  
- usePrevious (Keep state value between current and previous render)   
- useTimer (a count down minute / seconds)   
- useWindowSize (Get window sizes)  

## Use

```
import {useElementSize} from '@gadeoli/rjs-hooks-library';
```

## How to maintain

1. Clone  
2. NVM use 22.13.1 (node 22.13.1 / npm 10.9.2)  
3. npm i  
4. make changes  
5. git add / git commit / git push  
6. npm run publish (custom command)  

## Sources
[useElementSize](https://usehooks-ts.com/react-hook/use-element-size)   
useHover  
[useOnClickOutside](https://usehooks.com/useOnClickOutside/)  
usePersistedState  
usePrevious  
useWindowSize    
[useTimer](https://www.codegrepper.com/code-examples/javascript/time+counter+in+react+js)  
useClickOutside  
useOnPressKey  
useGhostInFirstRender  
[useOnInfiniteScrollTrigger](https://github.com/WebDevSimplified/React-Infinite-Scrolling)  
[useCabinet] ChatGPT  
some sources could be missing


## Changes
- useOnpressKey: added modifierKey support
npm package: @gadgetinc/api-client-core
Description: This package contains helper functions and types used to implement each client for each Gadget app.
Latest version: 0.15.46

# API Client Core

This package contains helper functions and types used to implement each client
for each Gadget app.

Note that, developers shouldn't need to use this package directly and should
instead use their generated client plus binding packages.

### For Gadget Developers

After releasing a new version, make sure to update
the `UserlandDependencyVersions` variable in gadget mainline.
npm package: @gadgetinc/auth
Description: `@gadgetinc/auth` is a `fastify` plugin that helps manage on platform authentication in [Gadget](https://gadget.dev).
Latest version: 0.4.0

# @gadgetinc/auth

`@gadgetinc/auth` is a `fastify` plugin that helps manage on platform authentication in [Gadget](https://gadget.dev).

## Features

This library implements the following features:

- registers route handlers for OAuth start, callback, and sign out.
- provides a utility for protecting [HTTP routes](https://docs.gadget.dev/guides/http-routes#http-routes) using `preValidation` hooks.
- manages sessions and users in your Gadget app's `user` and `session` model.

## Installation

```shell
yarn add @gadgetinc/auth
# or
npm install --save @gadgetinc/auth
```

## Usage

This plugin can be registered with Gadget in either a [boot plugin](https://docs.gadget.dev/guides/http-routes#boot-plugins) or [route plugin](https://docs.gadget.dev/guides/http-routes#what-routes-do-route-plugins-affect).

To register the plugin:

```typescript
// routes/+auth.js
import { Auth } from "@gadgetinc/auth";
import { api } from "gadget-server";

export default function (server) {
  server.register(Auth, {
    api,
    providers: [
      {
        type: "google",
        clientId: process.env.GOOGLE_CLIENT_ID,
        clientSecret: process.env.GOOGLE_CLIENT_SECRET,
      },
    ],
  });
}
```

To protect a route:

```typescript
// routes/GET-protected-route.js
const { preValidation } = require("@gadgetinc/auth");

module.exports = async function ({ reply }) {
  await reply.send("this is a protected route!");
};

module.exports.options = {
  preValidation,
};
```

## Options

Plugin options

- `api` - your Gadget api client
- `redirectToSignIn` - if a user is not signed in using the `preValidation` check, then redirect the user to the path specified by `signInPath`. Defaults to `false`
- `signInPath` - the path to your login page. This is where users will be redirected to if `redirectToSignIn` is set to `true`. Defaults to `/signin`
- `providers` - an array of authentication providers
  - `type` - currently the only available type is `"google"`
  - `clientId` - Google OAuth client id
  - `clientSecret` - Google OAuth client secret
  - `scopes` - optional OAuth scopes to request from the user. Defaults to `["email", "profile"]` for Google
npm package: @gadgetinc/dateilager
Description: Prerelease:
Author: Gadget Authors
Latest version: 0.12.5

# DateiLager JS Client

Prerelease:

1. run `npm run prerelease`
2. grab that value (e.g. `@gadgetinc/dateilager-v0.7.2-gitpkg-e956574`)
3. https://codeload.github.com/gadget-inc/dateilager/tar.gz/`<value from 2>`
npm package: @gadgetinc/vite-plugin-basic-ssl
Description: A plugin to generate untrusted certificates which still allows to access the page after proceeding a wall with warning.
Author: Evan You and Vite Contributors
Latest version: 1.1.0

# @vitejs/plugin-basic-ssl [![npm](https://img.shields.io/npm/v/@vitejs/plugin-basic-ssl.svg)](https://npmjs.com/package/@vitejs/plugin-basic-ssl)

A plugin to generate untrusted certificates which still allows to access the page after proceeding a wall with warning.

In most scenarios, it is recommended to generate a secure trusted certificate instead and use it to configure [`server.https`](https://vitejs.dev/config/server-options.html#server-https)

## Usage

```js
// vite.config.js
import basicSsl from '@vitejs/plugin-basic-ssl'

export default {
  plugins: [
    basicSsl()
  ]
}
```
 
## License

MIT
npm package: @gadmin2/cli
Description: Gadmin - modern, fast, powerful node.js web framework (@cli)
Latest version: 0.0.72

# Description

The gadmin2 CLI is a command-line interface tool that helps you to initialize, develop, and maintain your gadmin applications. It assists in multiple ways, including scaffolding the project, serving it in development mode, and building and bundling the application for production distribution. It embodies best-practice architectural patterns to encourage well-structured apps.

The CLI works with [schematics](https://github.com/angular/angular-cli/tree/master/packages/angular_devkit/schematics), and provides built in support from the schematics collection at [@gadmin2/schematics](https://www.npmjs.com/package/@gadmin2/schematics).


## Installation
```
$ yarn global add @gadmin2/cli@latest
```
Check CLI version
```
$ gadmin2 -v
```

## Usage
### CLI cmd list
```
$ gadmin2 --help
```

### Create a Gadmin project
```
$ gadmin2 n [app-name]
```

### Define data model
```
$ cd app-name
$ vi config/schema.prisma
```

### Generate code after edit config/schema.prisma
```
$ gadmin2 g primsa
```

### Start web DevServer
```
$ cd web
$ yarn dev
```

### Start server(nestjs) DevServer
```
$ cd server
$ yarn start:dev
```
About nestjs server [read more](https://ptc.coding.intlgame.com/p/gadmin2/d/schematics/git/tree/master/src/lib/application/files/server/nest/README.md)

If using Golang server，[read more](https://ptc.coding.intlgame.com/p/gadmin2/d/schematics/git/tree/master/src/lib/application/files/server/go/README.md)


## License
Gadmin is [MIT licensed](LICENSE).
npm package: @gadmin2/schematics
Description: Gadmin - modern, fast, powerful node.js web framework (@schematics)
Latest version: 0.0.55

## Description

The Nest CLI is a command-line interface tool that helps you to initialize, develop, and maintain your Nest applications. It assists in multiple ways, including scaffolding the project, serving it in development mode, and building and bundling the application for production distribution. It embodies best-practice architectural patterns to encourage well-structured apps. Read more [here](https://docs.nestjs.com/cli/overview).

## Installation

```bash
$ npm install -g @gadmin2/schematics
```
npm package: @gadmin2n/cli
Description: Gadmin - modern, fast, powerful node.js web framework (@cli)
Latest version: 0.0.82

# Description

The gadmin2 CLI is a command-line interface tool that helps you to initialize, develop, and maintain your gadmin applications. It assists in multiple ways, including scaffolding the project, serving it in development mode, and building and bundling the application for production distribution. It embodies best-practice architectural patterns to encourage well-structured apps.

The CLI works with [schematics](https://github.com/angular/angular-cli/tree/master/packages/angular_devkit/schematics), and provides built in support from the schematics collection at [@gadmin2n/schematics](https://www.npmjs.com/package/@gadmin2n/schematics).


## Installation
```
$ yarn global add @gadmin2n/cli@latest
```
Check CLI version
```
$ gadmin2 -v
```

## Usage
### CLI cmd list
```
$ gadmin2 --help
```

### Create a Gadmin project
```
$ gadmin2 n [app-name]
```

### Define data model
```
$ cd app-name
$ vi config/schema.prisma
```

### Generate code after edit config/schema.prisma
```
$ gadmin2 g primsa
```

### Start web DevServer
```
$ cd web
$ yarn dev
```

### Start server(nestjs) DevServer
```
$ cd server
$ yarn start:dev
```
About nestjs server [read more](https://ptc.coding.intlgame.com/p/gadmin2/d/schematics/git/tree/master/src/lib/application/files/server/nest/README.md)

If using Golang server，[read more](https://ptc.coding.intlgame.com/p/gadmin2/d/schematics/git/tree/master/src/lib/application/files/server/go/README.md)


## License
Gadmin is [MIT licensed](LICENSE).
npm package: @gadmin2n/schematics
Description: Gadmin - modern, fast, powerful node.js web framework (@schematics)
Latest version: 0.0.65

## Description

The Nest CLI is a command-line interface tool that helps you to initialize, develop, and maintain your Nest applications. It assists in multiple ways, including scaffolding the project, serving it in development mode, and building and bundling the application for production distribution. It embodies best-practice architectural patterns to encourage well-structured apps. Read more [here](https://docs.nestjs.com/cli/overview).

## Installation

```bash
$ npm install -g @gadmin2/schematics
```
npm package: @gaearon/rollup-plugin-closure-compiler-js
Description: Rollup plugin to invoke google-closure-compiler-js.
Author: Camel Aissani
Latest version: 1.0.5-fork.1

# rollup-plugin-closure-compiler-js

[![Build Status](https://travis-ci.org/camelaissani/rollup-plugin-closure-compiler-js.svg)](https://travis-ci.org/camelaissani/rollup-plugin-closure-compiler-js)
[![latest version](https://img.shields.io/npm/v/rollup-plugin-closure-compiler-js.svg)](https://www.npmjs.com/package/rollup-plugin-closure-compiler-js)
[![license](https://img.shields.io/npm/l/rollup-plugin-closure-compiler-js.svg)](https://github.com/camelaissani/rollup-plugin-closure-compiler-js/blob/master/LICENSE)
[![dependencies Status](https://david-dm.org/camelaissani/rollup-plugin-closure-compiler-js/status.svg)](https://david-dm.org/camelaissani/rollup-plugin-closure-compiler-js)
[![devDependencies Status](https://david-dm.org/camelaissani/rollup-plugin-closure-compiler-js/dev-status.svg)](https://david-dm.org/camelaissani/rollup-plugin-closure-compiler-js?type=dev)

[Rollup](https://github.com/rollup/rollup) plugin to invoke google-closure-compiler-js.

## Install

```sh
npm i rollup-plugin-closure-compiler-js -D
```

## Usage

```js
import { rollup } from 'rollup';
import closure from 'rollup-plugin-closure-compiler-js';

rollup({
    entry: 'main.js',
    plugins: [
        closure()
    ]
});
```

See [closure-compiler-js documentation](https://github.com/google/closure-compiler-js#flags) for more information about options.

# License

MIT ©