Skip to content
View longlho's full-sized avatar

Organizations

@infernojs @formatjs

Block or report longlho

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
longlho/README.md

Hey, I'm Long Ho πŸ‘‹

I build and write about the engineering work behind durable web products: frontend systems, build graphs, runtime boundaries, type systems, and the tiny workflow choices that decide whether a team keeps cruising or slowly turns into soup.

Most of my notes live at longho.dev, my vanity URL for the GitHub Pages site, where I poke at the places product engineering meets infrastructure.

Current Quest Log 🧭

  • πŸ—οΈ Build systems: Bazel, TypeScript, monorepos, selective builds, explicit dependencies, generated metadata, and package boundaries that stay understandable.
  • 🧩 Frontend runtime: shared browser, webview, and desktop capabilities; platform APIs; storage; telemetry; localization; and config that behaves consistently across surfaces.
  • 🌍 Internationalization: localization architecture, message extraction, translation workflows, and maintaining FormatJS.
  • ⚑ Product engineering: fast interfaces, routing, data loading, UX systems, deploy safety, artifact verification, and tooling that remains maintainable after launch.

Opinions I Keep Reusing Like A Favorite Hoodie πŸ§₯

  • πŸ“¦ Build outputs are APIs.
  • 🧱 Boundaries should be visible in code, not only in convention.
  • πŸͺ„ Generated framework wiring still has API-like failure modes.
  • 🌍 Internationalization belongs in the architecture early, not as a late-game string scramble.
  • πŸŒ‰ Shared runtime layers are product infrastructure, not just convenience utilities.
  • 🧘 The best internal tooling makes the right thing feel boring.

For writing, RSS, and more engineering rabbit holes, just go to longho.dev ✨

Pinned Loading

  1. formatjs/formatjs formatjs/formatjs Public

    The monorepo home to all of the FormatJS related libraries, most notably react-intl.

    TypeScript 14.7k 1.4k

  2. dropbox/ts-transform-import-path-rewrite dropbox/ts-transform-import-path-rewrite Public

    TS AST transformer to rewrite import path

    TypeScript 129 13

  3. dropbox/ts-transform-react-constant-elements dropbox/ts-transform-react-constant-elements Public

    A TypeScript AST Transformer that can speed up reconciliation and reduce garbage collection pressure by hoisting React elements to the highest possible scope.

    TypeScript 43 5

  4. tc39/proposal-intl-localematcher tc39/proposal-intl-localematcher Public

    Proposal for Intl.LocaleMatcher

    HTML 38 2

  5. hermeticbuild/gazelle_ts hermeticbuild/gazelle_ts Public

    Bazel build setup, a Gazelle TypeScript language extension, and the Rust import-extractor that powers it (linked in via cgo).

    Go 3 1

  6. perplexityai/gazelle_py perplexityai/gazelle_py Public

    A Gazelle language extension for Python, paired with a Rust import-extractor that the plugin links in via cgo.

    Go 6 1