const patrick = {
role: "Full-Stack Engineer",
location: "Beirut, Lebanon 🇱🇧",
focus: ["React", "TypeScript", "Node.js", "React Native", "DevOps"],
currentlyExploring: ["AI agents", "Edge runtimes", "Rust"],
openSource: "Contributor to Expo, React Native, Tokio, Prettier & more",
askMeAbout: ["scalable web apps", "system design", "shipping fast"],
};- 🔭 I build production web & mobile apps end-to-end — from Postgres schemas to pixel-perfect UIs.
- 🌍 I give back to the tools I use daily, contributing fixes across the React Native, React, Python & Rust ecosystems.
- 📫 Reach me at patrick.wehbe.applications@gmail.com
| Project | Contribution | PR |
|---|---|---|
| tokio-rs/tokio | Corrected the reversed poll-order description in the timeout docs |
#8214 |
| cli/cli | Fixed a dead anchor link in the release-process docs | #13688 |
| agronholm/anyio | Added a missing await to a file-I/O concurrency example |
#1182 |
| tj/commander.js | Fixed two syntax errors in shipped JSDoc @example blocks |
#2536 |
| software-mansion/react-native-reanimated | Updated the getRelativeCoords example to the v4 Gesture API |
#9713 |
⚛️ React Native & Expo
- expo/expo — fixed
findUpPackageJsoninfinite recursion at the Windows drive root · #47095 - expo/eas-cli — corrected
channel:pause/resumearg descriptions · #3887 · fixedupdate:republishdescription · #3888 - expo/orbit — fixed an iOS launch error message · #348
- software-mansion/react-native-svg — added
xmlns/xmlnsXlinktoSvgProps· #2982 · added HTTPheaderstoSvgUri· #2983 - software-mansion/react-native-reanimated — fixed deprecated Babel plugin names + an escaped doc link · #9714
- callstack/react-native-paper — forwarded the press event to a Tooltip's wrapped child · #5010
- callstack/react-native-slider — declared
react/react-nativeas peer dependencies · #817 - mrousavy/react-native-vision-camera — fixed incorrect API examples in the docs · #4030
- mrousavy/react-native-mmkv — fixed README example errors · #1073
- react-native-webview/react-native-webview — corrected a wrong documented default + an invalid union value · #3964
- react-native-elements — narrowed
ButtonPropschildren for React 19 · #4033 · alignedListItemprop types · #4034 - react-native-datetimepicker — corrected an iOS Flow prop type · #1048
- lottie-react-native — fixed stale org/package references in docs · #1430
- nativewind/nativewind — added Switch
thumb-*/track-*· #1826 · andcaret-*color utilities · #1827 - tamagui/tamagui — fixed a
Select.Viewportstyle leak · #4042 · and numericfontSizeline-height · #4043 - gluestack/gluestack-ui — fixed a FormControl import · #3422 · and an
aria-disabledkey + displayName typo · #3423 - pmndrs/react-spring — passed an
AnimationResulttoSpringValueonChange· #2548
⚛️ React (web)
- adobe/react-spectrum — Collections docs · #10232 · TableView example fix · #10233 · exported
DayOfWeektype · #10234 · ComboBox docs · #10222 - radix-ui/primitives — allowed
virtualRefto acceptRefObject<Measurable | null>for React 19 · #3969 - reactjs/react.dev — fixed an outdated CodeSandbox console note · #8479 · updated the IE / React 18 browser-support note · #8480
- TanStack/form — corrected docs that wrongly said
withFieldGroupprops are unused at runtime · #2217
🧰 Developer tooling & libraries
- prettier/prettier — stopped treating SCSS
!default/!globalinside strings as flags · #19404 - sindresorhus/ora — fixed type definitions that contradicted the implementation · #257
- yargs/yargs — fixed broken links in
api.md· #2549 - cli/cli — fixed a broken install command + link/grammar errors · #13690
🐍 Python · 🦀 Rust · 🎮 Game tooling
- django/asgiref — wrapped
async_to_syncwithfunctools.update_wrapper· #565 - rust-itertools/itertools — used saturating arithmetic to avoid
usizeoverflow panics · #1109 - ArchipelagoMW/Archipelago — seven fixes across the Launcher, Core, WebHost, Utils & docs · #6271 · #6272 · #6273 · #6274 · docs #6264–#6266



