Rostislav Melkumyan
react-logo-soup is now @sanity-labs/logo-soup 🪅 logo-soup.sanity.dev/docs
i collapsed it into 1 pass over a Uint32Array, downsampled to ~45x45, reused canvases at module level, and added caching so changing baseSize/scaleFactor doesn’t re-scan content detection: 1.4ms -> 37us per logo (38x) full mount: 29ms -> 828us for 20 logos (35x) github.com/sanity-labs/...
references for the curious: Uint32Array trick from 2011, still holds up: hacks.mozilla.org/2011/12/faster-canvas-pixel-manipulation-with-typed-arrays/ canvas reuse patterns: web.dev/articles/canvas-performance willReadFrequently for getImageData: schiener.io/2024-08-02/canvas-willreadfrequently
Hey! I wrote something 🖼️ Give it a read!
We bet you've spent more hours than you'd admit getting a row of partner logos to look right. Our colleague @rosti.no automated it. Pixel density analysis, aspect ratio normalization. Just maths (not AI). npm install react-logo-soup 🧪 sanity.io/blog/the-logo-soup-problem
been hearing that MCP's are the cool new thing - we got one github.com/sanity-io/sa... @sanity.io
Rostislav Melkumyan reposted
Here it is in real-time (and Dark Mode) 🥰 Coming to a @sanity.io UI near you 🔜
Blown away by how smooth @motion.dev orchestrates spring transitions. AnimatePresence + layout="position" + when: 'beforeChildren' let's me fade in the toast card, then stagger and fade in the toast contents, while everything is interruptible and responsive. 💖 The vid is 20x slowed down 🤌
Rostislav Melkumyan reposted
Rostislav Melkumyan reposted
Really impressed by this stack! Real-time live previews with localized path names—so cool that this works seamlessly. @nextjs.org @sanity.io next-intl next-intl-docs.vercel.app
idk if arc will even get new features anymore, but a @vercel.com integration is all i want for xmas
Rostislav Melkumyan reposted
Help us ship more quality bugs 🫶
⚡️ I'm hiring – come join my team as Tech Lead for Growth at @sanity.io! You'll work across the product and stack, set technical direction for the team, and ship fast and iterate as we learn – we value velocity and pragmatism above all else. DM me if you're interested or know someone great!
You are up to date.