Skip to content
View iambinlin's full-sized avatar
🔮
A simple and unpretentious chuunibyou boy
🔮
A simple and unpretentious chuunibyou boy

Block or report iambinlin

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
iambinlin/README.md

ryanwang building connected product and AI systems

ryanwang

Product Systems · AI Workflows · Useful Tools

Builder · Thinker · Explorer · Long-term learner

I build product systems, AI-assisted workflows, and useful tools that help ideas become real software.

I like work that crosses old boundaries: product thinking, engineering judgment, interface taste, automation, and the human care needed to make tools actually useful.

Explore the open-source highlights ↓

iambinlin signature


Open Source Highlights

  • MDN content #26064mdn/content #26108jshttp/fresh #38 — Raised an ambiguity in how ETag and Last-Modified precedence was documented, worked through it against RFC 9110 with MDN and Web standards contributors, prompted a documentation clarification, then carried the same finding into a tested implementation fix so If-None-Match correctly takes precedence over If-Modified-Since.
  • ant-design/ant-design-charts #2471 — Restored typed React ref forwarding across the chart component wrappers, so consumers can access the underlying chart instance without losing component prop or ref types.
  • NervJS/taro #17930 — Added typed PageInstance.animate overloads plus keyframe and scroll-timeline interfaces, bringing WeChat Mini Program animation APIs into Taro's TypeScript runtime surface.
  • jdf2e/nutui-react #3388 — Improved SafeArea compatibility with the legacy constant(safe-area-inset-*) fallback for older iOS versions, while forwarding className and style for consumer customization.
  • farion1231/cc-switch #2822 — Fixed false-negative Codex CLI detection in Tauri apps when Node is managed by mise, covering both shim and installed-runtime paths with regression tests.
  • crafter-station/petdex #366 — Made favorite and profile-pin actions optimistic while suppressing stale responses, rolling back failed writes, and preventing pin/unpin operations from racing full-list reorder saves.
  • crafter-station/petdex #232 — Added CLI coverage across macOS, Windows, Linux, and Node 20/22/24, plus a secret-free PKCE OAuth smoke test that reproduces the real dynamic loopback callback flow.
  • agent-club/PinboardShot #22 — Hardened a public macOS app's supply chain with Dependabot, CodeQL, commit-SHA-pinned Actions, and OIDC-backed Sigstore/Cosign signatures for release assets.
  • sindresorhus/is #162 & #165 — Added Blob and WeakRef runtime type guards and assertions, including TypeScript narrowing, documentation, and tests.
Merged PRs — 112 across 21 repositories

What I Build Now

  • Product systems that connect interface, data, automation, and real user workflows
  • AI-assisted workflows that remove friction without hiding judgment
  • Small tools, writing systems, and experiments around agents, memory, and creative coding
  • Software foundations that are simple enough to maintain and strong enough to grow

hand-drawn work map

footer

Pinned Loading

  1. jshttp/fresh jshttp/fresh Public

    HTTP request freshness testing

    JavaScript 163 34

  2. agent-club/daymark agent-club/daymark Public

    Apple Calendar subscription endpoint for holiday and reminder calendars.

    HTML 2

  3. agent-club/PinboardShot agent-club/PinboardShot Public

    Native, local-first macOS screenshot, annotation, and pinboard tool.

    TypeScript 3

  4. cc-switch-r2-webdav cc-switch-r2-webdav Public

    Cloudflare Worker WebDAV shim for CC-switch cloud sync

    TypeScript

  5. bob-plugin-coze-translate bob-plugin-coze-translate Public

    The plugin for bob with coze api translate

    JavaScript

  6. bob-plugin-creator-skill bob-plugin-creator-skill Public

    Bob App Plugin Creator AI Skill

    JavaScript