BBackOne Docsserver · utils · cli
Bun-nativeGitHub ↗
@geektech/backone-utils

概览

backone-utils 通用工具包:数据库、ID、缓存、JWT、HTTP、限流、Schema、配置。

@geektech/backone-utils 是 BackOne 的通用工具包:零运行时依赖,全部构建在 Bun 内置能力与标准 Web API 之上。包含数据库(多库 CRUD)、ID 生成、缓存、JWT、HTTP 客户端、限流、Schema 校验与全局配置八个模块。

特性

  • 零运行时依赖:数据库基于 Bun.SQL,JWT 基于 WebCrypto,HTTP 基于 fetch。
  • 多库方言:SQLite / PostgreSQL / MySQL / MariaDB 一套 API 统一读写。
  • 策略模式:ID 生成、缓存、限流均通过工厂按策略创建,可互换。
  • 类型安全:Schema 校验器带类型推导,配置读取后深冻结并推导完整类型。
  • 稳定错误码:各模块错误统一携带稳定 code,便于程序化处理。

安装

ts
bun add @geektech/backone-utils

模块一览

模块核心导出说明
dbDatabaseManager / Database / Table多库连接管理与增删改查,基于 Bun.SQL
idcreateId / createIdGeneratoruuidv4 / uuidv7 / nanoid / snowflake
cachecreateCacheTTL 惰性过期 / LRU 容量淘汰,含 getOrSet
jwtcreateJwtHMAC JWT 签发与验证(HS256/384/512)
httpcreateHttpClientfetch 封装:超时、指数退避重试、JSON
rate-limitcreateRateLimiter固定窗口 / 滑动窗口 / 令牌桶
schemavzod 风格轻量校验器,含类型推导与 safeParse
configdefineConfig从环境变量读取强类型配置,启动期 fail-fast
ts
import {
  DatabaseManager, createId, createCache, createJwt,
  createHttpClient, createRateLimiter, v, defineConfig,
} from '@geektech/backone-utils';

按需阅读:数据库 · 全局配置 · Schema 校验 是最常用的三个模块。