
		<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
			<channel>
				<title>José David Baena – Software Engineer</title>
				<link>https://josedavidbaena.com</link>
				<description>Personal website and blog where I document thoughts, ideas, and interests in software engineering, web performance, and open source technologies.</description>
				<language>en-us</language>
				<managingEditor>josedab@gmail.com (José David Baena)</managingEditor>
				<webMaster>josedab@gmail.com (José David Baena)</webMaster>
				<lastBuildDate>Fri, 10 Oct 2025 00:00:00 GMT</lastBuildDate>
				<atom:link href="https://josedavidbaena.com/tags/custom-hooks/feed.xml" rel="self" type="application/rss+xml"/>
				
		<item>
			<guid>https://josedavidbaena.com/blog/mermaid-nextjs-journey/mermaid-nextjs-part-2-interactive-controls</guid>
			<title>Building Interactive Pan/Zoom Controls I Didn&#39;t Need</title>
			<link>https://josedavidbaena.com/blog/mermaid-nextjs-journey/mermaid-nextjs-part-2-interactive-controls</link>
			<description>Part 2: 706 lines of pan/zoom controls with momentum physics. Users didn&#39;t need any of it. How to recognize over-engineering from inside it.</description>
			<pubDate>Fri, 10 Oct 2025 00:00:00 GMT</pubDate>
			<author>josedab@gmail.com (José David Baena)</author>
			<category>react</category><category>custom-hooks</category><category>pan-zoom</category><category>svg-rendering</category><category>over-engineering</category><category>feature-creep</category>
		</item>
	
			</channel>
		</rss>
	