open-index/open-npm huggingface dataset:
npm package: @shelter-zone/eslint-config-proladon
Description: proladon's custom eslint config
Author: proladon
Latest version: 1.0.6

# shelter-zone custom eslint rule base

## Usage


### Installation

```sh
yarn add -D @shelter-zone/eslint-config-proladon
```

### Configuration

`.eslintrc.js`:

```js
module.exports = {
  root: true,
  env: {
    node: true
  },
  extends: [
    '@shelter-zone/proladon/lib/eslintTypescript'
  ],
  parserOptions: {
    ecmaVersion: 2020
  },
  globals: {
  },
  rules: {

  }
}
```

`.vscode/.settings.json`:

```json
{
    "editor.codeActionsOnSave": {
        "source.fixAll.eslint": true
    },
    "editor.formatOnPaste": false,
    "editor.formatOnSave": false,
    "eslint.options": {
        "extensions": [
            ".html",
            ".js",
            ".vue",
            ".ts"
        ]
    },
    "eslint.validate": [
        "html",
        "javascript",
        "typescript",
        "vue"
    ]
}
```

available extends:
 - `@shelter-zone/eslint-config-proladon/lib/eslint-base`: define custom eslint rules
 - `@shelter-zone/eslint-config-proladon/lib/vue-base`: define custom vue rules
 - `@shelter-zone/eslint-config-proladon/lib/base`: define custom vue & eslint rules
 - `@shelter-zone/eslint-config-proladon/lib/vue2-essential`: base on `@shelter-zone/eslint-config-proladon/lib/base` and vue-essential rules
 - `@shelter-zone/eslint-config-proladon/lib/vue2-recommended`: base on `@shelter-zone/eslint-config-proladon/lib/base` and vue-recommended rules
 - `@shelter-zone/eslint-config-proladon/lib/vue3-base`: base on `@shelter-zone/eslint-config-proladon/lib/base` and define custom vue3 rules
 - `@shelter-zone/eslint-config-proladon/lib/vue3-essential`: base on `@shelter-zone/eslint-config-proladon/lib/vue3-base` and vue3-essential rules
 - `@shelter-zone/eslint-config-proladon/lib/vue3-recommended`: base on `@shelter-zone/eslint-config-proladon/lib/vue3-base` and vue3-recommended rules
npm package: @shelter-zone/shelter-ui
Description: This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
Latest version: 0.1.8

# Vue 3 + TypeScript + Vite

This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.

## Recommended IDE Setup

- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).

## Type Support For `.vue` Imports in TS

TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.

If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:

1. Disable the built-in TypeScript Extension
   1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette
   2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
npm package: @shelter-zone/sz-express-utils
Description: shelter-zone deta express utils
Latest version: 1.0.4

# sz-express-utils

## **middleware**

> **sendResponse**

```ts
import express from 'express'
import { sendResponse } from '@shelter-zone/sz-express-utils'

const app = express()
app.use(sendResponse)
```

## **middleware/validate**

> **useReqDataValidate**

```ts
import { useReqDataValidate } from '@shelter-zone/sz-express-utils'
import { CreateUserDataValidate } from './model'

const { joiValidate, superStructValidate } = useReqDataValidate()

router.post(
  '/user',
  joiValidate(CreateUserDataValidate, 'body'),
  async (req, res) => {...}
)
```

> **useApiAuthentication**

```ts
import { useApiAuthentication } from '@shelter-zone/sz-express-utils'
import { userDB } from './db'
import routes from './routes'

const PRIVATEKEY = process.env.PRIVATEKEY

const userAuthentication = useApiAuthentication(userDB, PRIVATEKEY)

export const router = express.Router()
router.use('/api', userAuthentication, routes)
```

## **logger**

```ts
import { log } from '@shelter-zone/sz-express-utils'
log({
  level: 'info',
  message: 'hello world',
})
```

## **Utils**

> **validateUserID**

```ts
import { validateUserID } from '@shelter-zone/sz-express-utils'

router.post(
  '/user',
  async (req, res) => {
    try {
      await validateUserID(req.headers.authorization, req.body.id)
      ...
    }
    catch (err) {
      ...
    }
  }
)
```