@open-utility-tools/corev0.2.0

Developer docs

Typed, framework-agnostic utility functions extracted from Open Utility Tools. Use the same core logic in web apps, Workers, CLIs, tests, and automation.

Install

The package is public on npm and ships ESM plus generated TypeScript declarations.

sh
npm install @open-utility-tools/core
ES modules with TypeScript declarations
Node 20 or newer
Browser, Node, and Bun compatible
Zero runtime npm dependencies
Typed catalog entries for every browser tool
Pure utilities first, WASM-backed image tools where needed
Imports

Prefer per-tool subpaths for the smallest import surface. Category and root namespace imports are available when they fit your app better.

Per-tool and category imports

ts
import { addBusinessDays } from '@open-utility-tools/core/time/add-business-days';
import { convert } from '@open-utility-tools/core/image/convert';
import { tool as jsonFormatterTool } from '@open-utility-tools/core/tools/data/json-formatter';
import { parseColor } from '@open-utility-tools/core/color';

const due = addBusinessDays('2026-06-01', 10).date;
const webp = await convert(sourceBytes, {
  format: 'webp',
  quality: 82,
  maxWidth: 1200,
});
console.log(jsonFormatterTool.webPath);

Root namespace imports

ts
import { text, math, color } from '@open-utility-tools/core';

const slug = text.cases.kebab('Open Utility Tools');
const total = math.evaluateExpression('2 * (12 + 8)');
const contrast = color.contrastRatio('#111827', '#ffffff');
Runtime contract

The core package has no React or DOM dependency. Browser APIs are used only where they are part of the runtime contract.

Pure TypeScript

Text, math, color, data, time, web, generators, and crypto helpers are plain ESM modules.

WebCrypto

Crypto and secure generator APIs expect globalThis.crypto, which is available in modern browsers, Node 20+, and Bun.

WASM image tools

Image conversion and probing use the bundled imaging WASM package and return Uint8Array values.

Subpath exports

Every exported path includes matching .d.ts files. All browser tools have catalog subpaths; extracted tools also expose direct compute APIs.

Import pathContents
@open-utility-tools/core

Namespace exports for extracted utility groups plus the full tool catalog.

@open-utility-tools/core/tools

Typed catalog entries for every browser tool, searchable by id, slug, or category/slug path.

@open-utility-tools/core/tools/*/*

Per-tool catalog imports such as tools/data/json-formatter and tools/text/case-converter.

@open-utility-tools/core/text

Case conversion, line tools, diff helpers, markdown, and morse utilities.

@open-utility-tools/core/math

Safe expression evaluation, numbers, statistics, roman numerals, and units.

@open-utility-tools/core/color

Color conversion, luminance, and WCAG contrast helpers.

@open-utility-tools/core/data

CSV, JSON, YAML, and TypeScript-shape conversion helpers.

@open-utility-tools/core/time

Legacy cron helpers plus namespaced access to extracted time tools.

@open-utility-tools/core/time/*

Per-tool time imports such as add-business-days, cron-parser, and week-number.

@open-utility-tools/core/image

WASM-backed raster image convert and probe APIs.

@open-utility-tools/core/image/convert

Single-tool image conversion import with types.

@open-utility-tools/core/image/probe

Single-tool image metadata probing import with types.

@open-utility-tools/core/web

HTTP status and MIME reference data.

@open-utility-tools/core/generators

UUID, ULID, nanoid, passwords, fake data, lorem ipsum, and gitignore templates.

@open-utility-tools/core/crypto

WebCrypto-backed JWT, HOTP, base32, and base64url helpers.

Release workflow

Package versions are produced with Changesets and published from GitHub Releases through npm trusted publishing.

Current release

Version
0.2.0
Tag
core-v0.2.0
Access
public
sh
# Maintainers publish through GitHub trusted publishing
bun run version:packages
git push origin main
gh release create core-v0.2.1 --target main --generate-notes

Looking for the tools UI?

The package ships extracted utility logic plus typed entries for every browser tool.

Browse tools

Command Palette

Search for a tool or run a command