
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
@arcjet/sprintf
Advanced tools
@arcjet/sprintfArcjet platform-independent replacement for util.format.
This package is platform-independent in order to support multiple runtimes in varying environments, such as Edge Runtime, Node.js, Bun, Deno, and Cloudflare Workers.
This is an internal utility to help us format log messages.
It’s a fork of pinojs/quick-format-unescaped.
We chose to fork so that we can maintain as much compatibility as possible
while being more restrictive.
You should not use this but use
pinojs/quick-format-unescaped or one of the
alternatives instead.
This package matches our current needs which are likely different from yours.
This package is ESM only. Install with npm in Node.js:
npm install @arcjet/sprintf
import { sprintf } from "@arcjet/sprintf";
console.log(sprintf("Hello %s", "world")); // => "Hello world"
console.log(sprintf("1 %i %d", 2, 3.0)); // => "1 2 3"
This package exports the identifier
sprintf.
The default export is also sprintf.
This package exports no TypeScript types.
sprintf(template, …values)Formats a string by replacing placeholders with the provided values. See Substitutions below for the supported placeholder types.
template (string)
— the format string with placeholdersvalues (Array<unknown>)
— values to interpolate into the templateThe formatted string (string).
Substitutions will be made for the following character sequences if the matching
argument conforms to the type. For example, "%d" will only be replaced by a
number, not a string or object.
Object substitution supports any value that is not undefined.
%d | %f - Replaced if provided with a number.%i - Replaced if provided with a number after Math.floor is called on it.%O | %o | %j - Replaced if provided with any value after
JSON.stringify is called on it. Objects with circular references will be
replaced with [Circular]. Functions will be replaced with the function name
or <anonymous> if unnamed.%s - Replaced if provided with a string.%% - Replaced by the literal % character.Apache License, Version 2.0 © Arcjet Labs, Inc.
Derivative work based on quick-format-unescaped
licensed under MIT © David Mark Clements.
Our work is more restrictive while maintaining as much compatibility as
possible.
FAQs
Arcjet platform-independent replacement for util.format
The npm package @arcjet/sprintf receives a total of 43,687 weekly downloads. As such, @arcjet/sprintf popularity was classified as popular.
We found that @arcjet/sprintf demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.