# nsuite

<p align="center" style="display: flex;align-items: center;justify-content: center;gap:8px;">
  <a href="https://npmcharts.com/compare/nsuite?minimal=true">
    <img src="https://img.shields.io/npm/dm/nsuite.svg" alt="Downloads">
  </a>
  <a href="https://www.npmjs.com/package/nsuite">
    <img src="https://img.shields.io/npm/v/nsuite.svg" alt="Version">
  </a>
  <a href="https://www.typescriptlang.org/">
    <img src="https://img.shields.io/badge/TypeScript-√-blue" alt="Support Typescript">
  </a>
  <a href="https://jsdoc.app/">
    <img src="https://img.shields.io/badge/JSDoc-√-red" alt="Support JSDoc">
  </a>
  <a href="https://github.com/Yakima-Teng/nsuite/blob/master/LICENSE">
    <img src="https://img.shields.io/npm/l/nsuite.svg" alt="License">
  </a>
  <a href="https://github.com/Yakima-Teng/nsuite">
    <img src="https://img.shields.io/github/stars/Yakima-Teng/nsuite.svg?style=social" alt="Stars">
  </a>
</p>

> Your missing nodejs development suite! Give it a star if you find this package useful ^\_^.

If you develop with Node.js, you will find that there are **many many many** functions/packages you need to write/install across **many** projects.
nsuite will make you feel more comfortable.
After install with `npm i -S nsuite`, you will have all the following abilities at your hand.

**TypeScript is supported.**

## Documentation

For online documentation, please visit [https://www.verysites.com/docs/nsuite/](https://www.verysites.com/docs/nsuite/).

## Env

- parseEnvFiles

## Path

- getFilePath
- getDirname
- joinPath
- isPathExists
- globMatchPaths

## Promise

- withTimeout

## Log

- createLogger
- logInfo
- logWarn
- logError

## File

- getSafeFileName
- zipFile
- zipFolder
- unzipFile
- getFileMd5
- getReadableFileSize

## SSH

- getSSHClient
- sshConnect
- joinPath
- zipFolder
- sshPutFile
- sshExecCommand

## Type

- getError

## Debug

- attachLogToFunc

## Captcha

- generateSvgCaptcha

## Text

- generateSummary

## Qiniu OSS

- getConfigFromQiniuOSS
- getMacFromQiniuOSS
- joinPath
- refreshUrlsFromQiniuOSS
- uploadDirToQiniuOSS

## Aliyun OSS

- getClientFromAliOSS
- getObjectUrlFromAliOSS
- listFilesFromAliOSS
- deleteRemotePathListFromAliOSS
- uploadLocalFileToAliOSS
- uploadDirToAliOSS

## License

This project is published under [MIT license](./LICENSE).
