View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
View jiunshinn's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report jiunshinn

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.

Content in all repositories owned by your account will be closed.
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
jiunshinn/README.md

Jiun Shin

Software engineer based in Seoul, Korea.

e-mail : jiun.dev@gmail.com

Open Source Highlights

  • expo/expo #47877 — Added maxWidth/maxHeight options to expo-image-manipulator that bound the image while it is decoded (iOS/Android/web), so large photos never materialize a full-sized bitmap — peak memory for a 12000×9000 JPEG dropped from +1242 MB to +50 MB, fixing the out-of-memory terminations on iOS.
  • expo/expo #46930 — Fixed an NSHashTable thread-safety crash in expo-video by guarding the iOS player registries with a synchronized hash table.
  • expo/expo #47811 — Fixed MediaLibrary.createAssetAsync failing on Android for files larger than ~2 GB by looping FileChannel.transferTo (a single sendfile copy is capped at 2,147,479,552 bytes) until the whole file is copied.
  • expo/expo #47881 — Fixed responsiveOrientationWhenOrientationLocked being ignored in expo-camera, so photo and video capture honor the responsive orientation on iOS.
  • expo/expo #45974 — Wired consumerProguardFiles into expo-notifications so the module's bundled R8 keep rules ship to consumers without manual ProGuard setup.
  • facebook/astryx #3616 — Fixed the Astryx docsite's empty Properties preview for full-viewport overlay components by adding a playground.overlay config and an "Open preview" bridge into playground state.
  • facebook/astryx #3882 — Added a fit prop to AspectRatio so the component owns child sizing instead of leaking it to consumers.
  • facebook/astryx #4204 — Fixed the Astryx CLI emitting theme override keys that didn't match the class names components actually render — 15 override keys were silently doing nothing.
All merged PRs

expo/expo

  • #47881expo-camera: honor responsiveOrientationWhenOrientationLocked for photo and video capture
  • #47877expo-image-manipulator: maxWidth/maxHeight options that downsample while decoding (iOS/Android/web)
  • #47811expo-media-library: loop transferTo to copy files larger than ~2 GB
  • #46930expo-video: thread-safe iOS player registries
  • #46029expo-task-manager: consumerProguardFiles wiring for bundled R8 keep rules
  • #45974expo-notifications: consumerProguardFiles wiring for bundled R8 keep rules

facebook/astryx — open source design system by meta

  • #4204 — CLI: theme override keys now match the class names components actually render
  • #4202 — ChatLayout: flex-column root so the sticky dock doesn't add phantom scroll height
  • #4036 — Table: cleaned up selection row subscriptions
  • #3932 — EmptyState docs: clarified headingLevel is semantic-only
  • #3882 — AspectRatio: fit prop for component-owned child sizing
  • #3881 — Switch: renamed labelSpacing"default" to "hug", keeping a deprecated alias
  • #3880 — Docsite: surfaced prop type definitions in the props table
  • #3878 — Docsite: static props table for provider/utility pages instead of a playground
  • #3875 — Button: added a width prop
  • #3874 — Templates: replaced the IDE terminal's raw sizing div with Stack height
  • #3873 — Docsite: exposed body and muted background tokens in the theme editor quick-edit
  • #3759 — Migration guide: cascade-layer safety checklist and foundation smoke test
  • #3749 — Refactor: migrated the charts/lab color parsers onto the shared core color utils
  • #3748 — Review tooling: content-based visual signal for needs:design-review
  • #3744 — Docsite: ContextMenu playground defaults, ContextMenuItem showcase and examples
  • #3686 — Docsite: extended the playground.overlay preview mode to Lightbox
  • #3616 — Docsite: "Open preview" bridge for closed-while-hidden overlay components

EvanBacon/serve-sim

  • #12 — Fixed duplicate preview windows when the simulator restarted
  • #8 — Made the CLI Node-runnable so npm install is the only setup step

spacedriveapp/spacebot

  • #1 — Added a native Z.ai (GLM) provider

Tech

React Native · Expo · React.js · Next.js · TypeScript · Kotlin · Swift

Pinned Loading

  1. serve-emulserve-emulPublic

    The npx serve of Android devices: stream and control emulators or real devices from a browser for agentic mobile QA.

    TypeScript 15 5

  2. differdifferPublic

    TypeScript

  3. react-native-focus-guidereact-native-focus-guidePublic

    A React Native library that provides an elegant way to create interactive focus guides and tooltips. It allows you to highlight specific components and display tooltips with smooth animations, perf…

    TypeScript 1

  4. voice-recognition-react-nativevoice-recognition-react-nativePublic

    voice-recognition-react-native is a library that provides voice recognition functionality in React Native applications. This library supports voice recognition on iOS and Android.

    Kotlin 3