Open Source
Libraries I maintain and patches I have upstreamed.
Libraries
- Library · TypeScript · ★ 18 timekeeper-countdown
Lightweight, zero-dependency countdown engine and React useCountdown hook, implemented in pure TypeScript and published as a monorepo. The framework-agnostic core uses a guarded monotonic time provider, immutable snapshots, lossless time decomposition, formatting helpers, and fake-time utilities for deterministic tests. Both packages ship ESM and CommonJS bundles, with VitePress documentation and CI.
npm: @timekeeper-countdown/core @0.3.2 · @timekeeper-countdown/react @0.3.2
- Library · Erlang · ★ 6 erli18n
Modern GNU gettext-compatible internationalization for Erlang/OTP 27+, implemented in pure Erlang and organized as a rebar3 umbrella with two separately published Hex packages. The erli18n runtime provides .po/.pot loading, copy-free persistent_term lookups, CLDR pluralization, the full gettext facade family, locale negotiation and fallback, telemetry, and optional Cowboy, Elli, and erlydtl integrations. The rebar3_erli18n 0.2.0 plugin extracts, merges, checks, reports, and compiles catalogs from Erlang abstract forms, including opt-in compile-time .po-to-BEAM generation.
It is listed in erlang-punch/awesome-erlang , the community-curated catalog of notable Erlang libraries and resources.
Contributions
phoenixframework/phoenix
The productive web framework for Elixir — peace of mind from prototype to production.
- Merged · #6635 Don't pass type: :id to scope references in generated migrations
- Merged · #6633 Fix phx.new crash when parent directory contains a colon
- Merged · #6632 Raise on list value in query string parameter encoding
- Merged · #6631 Fix outdated flash component example in docs
zeek/zeek
A powerful network analysis framework for security monitoring and observability.
- Merged · #5673 Add btests exercising the error cases in expression handling
- Merged · #5670 Add btest covering the Python bytecode file signatures