Ricardo Amaral
ricardoamaral.dev
Ricardo Amaral
@ricardoamaral.dev
Reposted by Ricardo Amaral
📚 New Year, New Blogpost 🎉

Continuing my thoughts about design-systems, this one is about compound components, when they are a good fit and how to make them type-safe. Spoiler: It’s not about the `children` prop ...
Building Type-Safe Compound Components
Compound Components are great, but should be type-safe. No, this isn't about the children prop ...
tkdodo.eu
January 2, 2026 at 5:27 PM
Ever wondered how to render a smooth, audio-reactive waveform using Canvas? We're peeling back the layers of our latest project in building Ramble. Perfect for #AudioProcessing enthusiasts and #WebDev pros alike! www.doist.dev/building-ram...
Building Ramble #3: Visualizing the Waveform
How we render a smooth, real-time audio waveform with Canvas in the browser
www.doist.dev
January 2, 2026 at 2:16 PM
Ever wondered how real-time audio capture works in modern web apps? Dive into our journey from ScriptProcessorNode to AudioWorklet and the unexpected hurdles we faced along the way. #WebAudio #RealTimeAudio #JavaScript www.doist.dev/building-ram...
Building Ramble #2: Capturing Audio in Real-Time
The unexpected challenges of streaming microphone audio through modern browser APIs
www.doist.dev
December 26, 2025 at 11:57 AM
Ever wondered about the complexities of accessing your microphone on the web? Our journey to a flawless user experience uncovers browser quirks and more. Dive into the details with us: www.doist.dev/building-ram... #WebDevelopment #UserExperience
Building Ramble #1: Taming the Microphone
The surprising complexity behind asking users for microphone permission on the Web
www.doist.dev
December 19, 2025 at 12:16 PM