# @ct0/functions

> A pure functions set to help developer easy to handle common things, probably

Latest version **1.19.20250515** (published 2025-05-15) · MIT license · 0 weekly downloads

## Install

```sh
npm install @ct0/functions
pnpm add @ct0/functions
yarn add @ct0/functions
bun add @ct0/functions
```

## Health

**Score 40/100 (D)** — status: maintenance-mode.

Positive: has types; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

Negative: stale; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.19.20250515 |
| Published | 2025-05-15 |
| First published | 2021-09-20 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 55.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | delong |
| Maintainers | delong, tangdaguang |
| Keywords | @ct0/functions |

## Links

- npm: https://www.npmjs.com/package/@ct0/functions
- Repository: https://gitee.com/ct0/functions
- Homepage: https://deronw.github.io/npm/@ct0/functions/
- npm.io page: https://npm.io/package/@ct0/functions

## Recent versions

- 1.19.20250515 (latest) — 2025-05-15
- 1.18.20240226 — 2024-02-26
- 1.17.20230605 — 2023-06-05
- 1.16.20230428 — 2023-04-28
- 1.15.20220908 — 2022-09-08
- 1.14.20220907 — 2022-09-07
- 1.13.20220811 — 2022-08-11
- 1.12.20220608 — 2022-06-08
- 1.11.20220408 — 2022-04-08
- 1.10.20220408 — 2022-04-08
- 1.9.20220331 — 2022-03-31
- 1.8.1648020370 — 2022-03-23
- 1.7.1646893026 — 2022-03-10
- 1.6.1646880153 — 2022-03-10
- 1.5.1646380852 — 2022-03-04
- … 9 more at https://npm.io/package/@ct0/functions/versions

## README

# @ct0/functions

这里用来放跨项目的公共方法，纯函数方法

### 使用方法

```sh
bun i [@ct0/functions](https://www.npmjs.com/package/@ct0/functions)
```

### 生成文档

```sh
bun run doc
```

### 开发流程

向 https://gitee.com/ct0/functions 代码库提交 Merge Request 代码。

添加新方法注意事项

1. **不允许** 引用第三方库，公共方法不是三方库的入口
1. **不允许** 使用有状态方法，这是纯函数方法库，类似 lodash
1. **不允许** 修改已存在方法的当前行为，只能修复 bug

### 文档

~~通过代码中的 [jsdoc](https://jsdoc.app/) 生成文档，因为需要支持 TS，所以使用工具 [better-docs](https://github.com/SoftwareBrothers/better-docs)。~~

### 发布

发布检查列表

- [ ] 编写文档
- [ ] 测试覆盖率 100%
- [ ] 修改版本号（通过 `npm run build` 自动修改）
- [ ] git 提交信息使用 [约定式提交](https://www.conventionalcommits.org/en/v1.0.0/)

发布方法

```shell
npm publish --access=public
```

### FAQ

1. 为什么不直接使用三方库，比如 lodash？

   这是针对万象项目的公共业务方法，如果只是 clone 、flatten 等方法，应该直接使用 lodash。

1. 为什么项目内不能引用第三方库？

   跨项目公共方法，的核心要求是稳定，稳定的基础出简单，因此不能引用第三方库。

1. 有个方法的命名或默认行为写的很不好，可以直接修改吗？

   不行，另写一个方法。

---
_Source: https://npm.io/package/@ct0/functions · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
