<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss/styles.xsl" type="text/xsl"?><rss version="2.0"><channel><title>tech — oriz</title><description>A software-engineering blog by Chirag Singhal. Deep, buildable notes on shipping software — read like an engineering drawing set.</description><link>https://tech-blog.oriz.in/</link><language>en</language><managingEditor>whyiswhen@gmail.com (Chirag Singhal)</managingEditor><webMaster>whyiswhen@gmail.com (Chirag Singhal)</webMaster><item><title>Type-safe APIs, end to end, without a framework religion</title><link>https://tech-blog.oriz.in/blog/type-safe-apis-typescript/</link><guid isPermaLink="true">https://tech-blog.oriz.in/blog/type-safe-apis-typescript/</guid><description>Where TypeScript types stop and runtime validation must start, why one schema should drive both, and a pattern that keeps client and server honest across the network boundary.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate><category>Dev</category><category>typescript</category><category>api</category><category>zod</category><category>validation</category><author>whyiswhen@gmail.com (Chirag Singhal)</author></item><item><title>Astro or Next for a content site in 2026</title><link>https://tech-blog.oriz.in/blog/astro-or-next-content-sites-2026/</link><guid isPermaLink="true">https://tech-blog.oriz.in/blog/astro-or-next-content-sites-2026/</guid><description>A decision framework, not a benchmark war. When Astro&apos;s zero-JS default wins, when Next&apos;s app model earns its weight, and the one question that settles most arguments.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate><category>Dev</category><category>astro</category><category>nextjs</category><category>web-dev</category><category>performance</category><author>whyiswhen@gmail.com (Chirag Singhal)</author></item><item><title>MCP servers, explained for people who ship</title><link>https://tech-blog.oriz.in/blog/mcp-servers-explained/</link><guid isPermaLink="true">https://tech-blog.oriz.in/blog/mcp-servers-explained/</guid><description>The Model Context Protocol in plain terms: what a server actually exposes, the transport choices that matter, and how to build one without over-engineering it.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>Dev</category><category>mcp</category><category>ai</category><category>tooling</category><category>protocols</category><author>whyiswhen@gmail.com (Chirag Singhal)</author></item></channel></rss>