Skip to content

chiskat/omn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Omn

npm npm downloads package size

omn 是一个适用于 AI 编程的提供独特和实用工具函数的 npm 库——就像 lodashramda 等库一样,但它更贴近实际应用场景、更 “接地气”,也更现代化。

文档

在线文档

Agent Skills

omn 现在提供 配套的 Agent Skills,安装后,你的 AI 编程助手可以理解和使用其中的工具函数。

亮点

  • 提供更独特更实用的工具函数;
  • 有配套的 Agent Skills,和 AI 协同更方便;
  • 更好的兼容性,提供 CommonJS、ESModule、UMD 等多种模块入口;
  • 完全 TypeScript 类型支持和完善的 JSDoc 注释;
  • 无副作用,支持 TreeShaking;
  • 代码体积小,零依赖。

起步

安装:

npm add omn

使用 HTML 标签引入(建议加上 @<版本号>):

<script src="https://unpkg.com/omn"></script>

示例

格式化电话号码:

import { formatPhoneNumber } from 'omn'

formatPhoneNumber('13788889999', 'xxx **** xxxx')
// → "137 **** 9999"

汉字视作 2 字符长度:

import { lengthOfEn } from 'omn'

lengthOfEn('你好')
// → 4

在满足条件前不断重试/轮询:

const result = await retry(() => axios.get('/api/task/status'), {
  timeout: 30 * 1000,
  interval: 500,
  success: res => res.data.status === 'done',
})

if (result.success) {
  console.log('任务完成,结果:', result.data)
} else {
  console.log('轮询失败,原因:', result.reason)
}

About

A practical, lightweight and unique JavaScript toolkit.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors