Satyajit Sahoo
satya164.page
Satyajit Sahoo
@satya164.page
♥️ CSS, JavaScript, TypeScript, React, React Native
💼 Front-end @callstack.com
🔨 Builds @reactnavigation.bsky.social
🌍 Globe Earther
🏳️‍🌈 He/Him
Reposted by Satyajit Sahoo
message me here or come talk with me at @reactnativelondon.co.uk next week if this job posting looks like a good fit for you! expo is an amazing place to work! expo.dev/careers/web-...
Web services engineer — Expo
Create the way people write and distribute application software.
expo.dev
November 5, 2025 at 4:45 PM
Reposted by Satyajit Sahoo
Did you wonder what you can build for Meta Quest?

We’ve got your back and came up with ideas that should be a fun challenge to implement! Look out for tomorrow’s post for an inspiration.

We also have a special announcement planned with Meta so keep an eye out 😉
November 5, 2025 at 8:19 PM
Reposted by Satyajit Sahoo
Note that this doesn't happen with @tanstack.com start server functions because unlike "directives", they are actually typed so you'll get a Promise on type level and linting can tell you if you forget to await it. So types are good I guess, who would've thought 🤷‍♂️
How our "perfect" one-line isOwner() function in Next.js started always returning true.

Spoiler: It is because of server functions...

Wrote about the bug, the fix, and the "magic" that caused it:

marma.dev/articles/202...

#webdev #javascript #typescript #react #nextjs #serverfunctions
marma.dev
November 2, 2025 at 8:57 AM
Reposted by Satyajit Sahoo
React Native and @expo.dev on Meta Quest = new challenges, same fun 🕶️

Let's explore library compatibility together!

👇
October 31, 2025 at 12:32 PM
Reposted by Satyajit Sahoo
as someone who very much enjoys @chasebliss.bsky.social pedals, i am so stoked that this app exists and that it was built using tools that i work on expo.dev/blog/buildin...
Building a MIDI-over-Bluetooth app using Expo Modules
Learn how to build custom native functionality using Expo Modules, including adding MIDI-over-Bluetooth support for real-world hardware integration.
expo.dev
October 30, 2025 at 5:40 PM
Reposted by Satyajit Sahoo
The latest version of React Navigation now has a new unstable API to automatically navigate to the correct screen after a conditional render (e.g., if a screen was opened via a deep link, but was behind auth):

UNSTABLE_routeNamesChangeBehavior="lastUnhandled"

reactnavigation.org/docs/auth-fl...
October 27, 2025 at 11:41 AM
Reposted by Satyajit Sahoo
Last year, we proved that React Native is a great fit for Vision Pro. For React Conf 2025, we’re doing the same for @MetaQuestVR. We built a showcase app to show how React Native scales to VR platforms, and the results speak for themselves!

Check out what we did on our blog👇
October 8, 2025 at 1:41 PM
Reposted by Satyajit Sahoo
Excited that we managed to ship The Recipe Box for iPad and iPhone with Liquid Glass support and recipe timers ready for download on new iPhone day. Get it here for iPad: apps.apple.com/us/app/the-r...
September 19, 2025 at 3:21 PM
Reposted by Satyajit Sahoo
A nice tool if you love color and CSS: HDR gradients, generates absolute stunning oklch gradients you can copy paste to your CSS.

gradient.style/#type=linear...
October 2, 2025 at 12:30 PM
Reposted by Satyajit Sahoo
Reposted by Satyajit Sahoo
has anyone encountered this odd bug with view transitions? this can't possibly be expected behaviour, can it?

help me obi-wan @jakearchibald.com you're my only hope 🥺

svelte.dev/playground/6...
view transition bug • Playground • Svelte
Web development for the rest of us
svelte.dev
September 23, 2025 at 7:36 PM
Reposted by Satyajit Sahoo
right to repair folks eat your heart out
September 20, 2025 at 4:57 PM
Reposted by Satyajit Sahoo
With React Native AI, you can choose the right provider for your use case:
- Apple provider → system models built into iOS
- MLC provider → run any supported model locally
September 18, 2025 at 1:48 PM
Reposted by Satyajit Sahoo
Excited to run my React Query – Beyond the Basics workshop at @reactadvanced.gitnation.org, Nov 27 in London! 🎉

If you know the fundamentals & want to level up with prefetching, cache seeding, persistence & smooth UX, this one’s for you 🚀. Hope to see you there:
React Conference In London, Nov 28 & Dec 1, 2025
The main React Conference in the UK, running every year in London. Focused on Advanced React topics from the React Core team, framework authors and case studies from top engineers.
reactadvanced.com
September 18, 2025 at 3:52 PM
Reposted by Satyajit Sahoo
Expo Go just made it to the metaverse:

www.meta.com/experiences/...
Expo Go on Meta Quest
Expo is a free & open source platform to build apps using JavaScript and React.
www.meta.com
September 16, 2025 at 5:50 PM
Reposted by Satyajit Sahoo
Getting Legend List for web ready for my @reactuniverseconf.com talk in beautiful Wroclaw 😍
August 30, 2025 at 10:12 AM
Reposted by Satyajit Sahoo
I've had so many folks ask now, that I had to go for it.

You asked me to build that ideal Inferno X framework that I described ages ago, so I went ahead and did just that. I built something that actually works and, well, it works well. Oh, and doesn't use signals!
August 27, 2025 at 11:30 PM
Couldn't find any article talking about how to set up macOS-like shortcuts on Hyprland, so decided to write one after I figured out how to.

satya164.page/posts/macos-...
macOS-like shortcuts in Hyprland
I have been using a MacBook for a while. Here is how I managed to make common shortcuts like copy & paste use the same keys as macOS in Hyprland.
satya164.page
August 27, 2025 at 7:35 PM
Reposted by Satyajit Sahoo
I'm excited to announce I will be speaker at React Universe, just next week! 🥳

It's high time we talk Worklets on a big stage.
August 25, 2025 at 10:42 AM
Reposted by Satyajit Sahoo
reminder (because this truly annoys me): peer dependency resolution is pretty broken with severe bugs in *every* package manager, except pnpm. Yes, really
August 25, 2025 at 12:14 PM
Congrats to me, I guess. Sorry @expo.dev, but the credit is all mine.
August 24, 2025 at 3:22 PM
Reposted by Satyajit Sahoo
SDK 54 beta is out 🚀

◆ RN 0.81 + React 19.1
◆ Precompiled React Native for iOS → ⚡ faster builds
◆ iOS 26 Liquid Glass icons + Expo UI
◆ Android 16 edge-to-edge + predictive back
◆ Updates to EAS Update + Autolinking
◆ Final release w/ Legacy Arch

Details in the changelog: expo.dev/changelog/sd...
Expo SDK 54 beta is now available - Expo Changelog
Learn about the changes, how to try it out, and how to give feedback.
expo.dev
August 19, 2025 at 7:47 PM
Reposted by Satyajit Sahoo
✨ I just published a brand-new post! It’s about the notorious SVG <path> element.

With its compact Regex-style syntax, <path> can be super intimidating. But they’re also *incredibly* powerful, letting us draw (and animate!) curved lines.

You can read it here, and I’ll share more info in thread. 🧵
An Interactive Guide to SVG Paths • Josh W. Comeau
SVG gives us many different primitives to work with, but by far the most powerful is the <path> element. Unfortunately, it’s also the most inscrutable, with its compact Regex-style syntax. In this tut...
www.joshwcomeau.com
August 18, 2025 at 3:27 PM
Reposted by Satyajit Sahoo
2 Fast 2 LegendList. Beta 2morrow.
August 17, 2025 at 3:55 PM
Reposted by Satyajit Sahoo
Scoped View Transitions are ready for testing in Chrome!

SVTs expose el.startViewTransition() on HTML elements. The element creates a scope for the transition, ∴ the transition pseudo-elements are affected by ancestor clips and transforms. Multiple SVTs on separate elements can run *concurrently*.
github.com
August 15, 2025 at 9:03 PM