tinyrainbow is a small JavaScript library for printing colorful messages in the terminal or the browser console, with ANSI color support in Chrome engines. It is an ESM-only fork of picocolors (about 6 kB unpacked) that supports the exports field.
Project status
- Actively maintained: The upstream GitHub shows recent activity, with the latest recorded update being v3.1.0 on 2026-03-12, after earlier updates in 2025.
- Update cadence (apparent): Updates came in relatively close succession in mid- to late 2025 (v3.0.2 on 2025-08-29, v3.0.3 on 2025-09-08), then a longer gap until v3.1.0 on 2026-03-12.
AI summary generated Today
Recent updates
v3.1.0
2 months agoRelease v3.1.0 primarily adds new exported helper functions, `disableDefaultColors` and `enabledDefaultColors`, intended to toggle the library's default color behavior. The code changes also introduce a new option to `createColors` to override environment support detection.
Featuresv3.0.3
9 months agov3.0.3 is a small patch release focused on fixing the output of getDefaultColors in tinyrainbow. The change ensures the returned colors object includes isColorSupported (and initializes a reset value) so callers do not receive an incomplete default configuration.
v3.0.2
9 months agov3.0.2 is a small bug-fix release focused on improving how tinyrainbow decides whether to assume a TTY. The main functional change is in TTY detection logic, plus a package version bump.
v3.0.1
9 months agoRelease v3.0.1 is a small change that adds a default export to the package entry point. The package version is bumped from 3.0.0 to 3.0.1, with no other code changes reflected in the diff.
v3.0.0
9 months agov3.0.0 consolidates the library’s Node and browser entry points into a single implementation, and changes TTY detection logic. The release notes only mention a breaking change related to isatty usage, but the code diff shows additional API surface and packaging changes that are likely to affect existing consumers.
Breakingv2.0.0
1/13/2025v2.0.0 adds support for overriding TTY detection via the environment variable FORCE_TTY. The change primarily affects the node entrypoint behavior, and the repo also updates CI to include a build step. The code diff also shows several API surface changes in the browser and node entrypoints that are not described in the release notes.
BreakingFeaturesv1.2.0
7/10/2024v1.2.0 adds support for bright foreground and background colors to tinyrainbow. It also updates color support detection so that colors are not disabled by default when running inside GitHub Actions. The code diff only reflects these two changes plus the version bump.
Featuresv1.1.2
7/10/2024v1.1.2 contains a bug fix aimed at preventing a maximum call stack error when processing large strings. The implementation changes the internal delimiter replacement logic in src/index.ts to use an iterative approach instead of recursion, and adds a regression test that exercises very large inputs.
v1.1.1
4/14/2023v1.1.1 adds test coverage (Vitest) and updates behavior related to ANSI color support in different environments, including browser-related changes. The code diff also modifies the core environment detection logic for whether colors are supported and tweaks the public TypeScript types for formatter functions.
Featuresv1.1.0
4/13/2023v1.1.0 introduces an automatic environment detection capability, reducing the need for manual setup. The release notes do not mention any API changes, bug fixes, or security updates.
Features