one timestamp.
every format.
timecheck reads any timestamp — unix seconds, unix ms, iso 8601, rfc 2822, “now” — auto-detects which one you handed it, and prints it in all the others. pipe a log file through and unix tokens get rewritten to iso in place.
npm i -g @v0idd0/timecheck
--replace-unix · log files made readable
most timestamp tools take one ts and print one ts. timecheck has a stream-filter mode — pipe a log file in, get the same log out with unix tokens rewritten to iso. catches both 10-digit (seconds) and 13-digit (ms). leaves user-ids and sizes alone.
four ways you'll actually use it.
convert one timestamp
unix s: 1706482800
unix ms: 1706482800000
rfc: Sun, 28 Jan 2024 23:00:00 GMT
rel: 2 years ago
now, in every format
local time anywhere
iso: 2024-01-28T23:00:00.000Z
any iana zone works.
json for scripts
structured out, every field named, ready for jq / cron / ci.
three places it earns its keep.
npm
$ npm i -g @v0idd0/timecheck
node 14+ on linux / macos / windows. zero runtime deps. updates with npm update -g.
log inspection
$ tail -f app.log \
| timecheck --replace-unix
follow a log live. unix tokens rewrite to iso as they stream past. nothing else changes — user-ids, sizes, levels stay verbatim.
shell quickie
$ date +%s | timecheck --json \
| jq -r .iso_8601
chain through pipes. timecheck reads stdin if no positional arg is given.
our log line was 1706482800. our incident channel was "when did this happen?". we wrote timecheck so the answer was already in the log.
no telemetry. no signup. no “upgrade for the enterprise rule pack.” mit forever, even if vøiddo dies tomorrow — the source is public and the npm package is yours to fork.