<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>rena.to</title>
        <link>https://rena.to/</link>
        <description>Tech posts about JavaScript, TypeScript, React, and more</description>
        <lastBuildDate>Sun, 16 Aug 2026 20:44:41 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>custom</generator>
        <language>en</language>
        <image>
            <title>rena.to</title>
            <url>https://rena.to/default-og.png</url>
            <link>https://rena.to/</link>
        </image>
        <copyright>2021-present Renato Ribeiro. All Rights Reserved.</copyright>
        <item>
            <title><![CDATA[TypeScript Tuple Length]]></title>
            <link>https://rena.to//blog/17-typescript-tuple-length</link>
            <guid>17-typescript-tuple-length</guid>
            <pubDate>Sun, 14 Sep 2025 19:44:23 GMT</pubDate>
            <category domain="Technology">typescript</category>
            <category domain="Technology">tip</category>
            <enclosure url="https://rena.to/api/og//blog/17-typescript-tuple-length.png?title=TypeScript+Tuple+Length&amp;subtitle=undefined&amp;permalink=%2Fblog%2F17-typescript-tuple-length&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2025-09-14T19%3A44%3A23Z" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Pitfalls of an Abstraction]]></title>
            <link>https://rena.to//blog/16-pitfalls-of-an-abstraction</link>
            <guid>16-pitfalls-of-an-abstraction</guid>
            <pubDate>Tue, 08 Apr 2025 16:15:10 GMT</pubDate>
            <description><![CDATA[Reflections and thoughts]]></description>
            <category domain="Technology">thoughts</category>
            <enclosure url="https://rena.to/api/og//blog/16-pitfalls-of-an-abstraction.png?title=Pitfalls+of+an+Abstraction&amp;subtitle=Reflections+and+thoughts&amp;permalink=%2Fblog%2F16-pitfalls-of-an-abstraction&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2025-04-08T16%3A15%3A10Z" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[TypeScript Distributives]]></title>
            <link>https://rena.to//blog/15-typescript-distributives</link>
            <guid>15-typescript-distributives</guid>
            <pubDate>Thu, 13 Mar 2025 21:23:55 GMT</pubDate>
            <description><![CDATA[Get it once and for all]]></description>
            <category domain="Technology">typescript</category>
            <enclosure url="https://rena.to/api/og//blog/15-typescript-distributives.png?title=TypeScript+Distributives&amp;subtitle=Get+it+once+and+for+all&amp;permalink=%2Fblog%2F15-typescript-distributives&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2025-03-13T21%3A23%3A55Z" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Correctly infers from initial props]]></title>
            <link>https://rena.to//blog/13</link>
            <guid>13</guid>
            <pubDate>Thu, 06 Mar 2025 16:42:17 GMT</pubDate>
            <description><![CDATA[Do not separate your types]]></description>
            <category domain="Technology">react</category>
            <category domain="Technology">typescript</category>
            <enclosure url="https://rena.to/api/og//blog/13.png?title=Correctly+infers+from+initial+props&amp;subtitle=Do+not+separate+your+types&amp;permalink=%2Fblog%2F13&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2025-03-06T16%3A42%3A17Z" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[The `Override` Type]]></title>
            <link>https://rena.to//blog/12-the-override-type</link>
            <guid>12-the-override-type</guid>
            <pubDate>Fri, 26 Jul 2024 22:42:06 GMT</pubDate>
            <description><![CDATA[When intersecting is not enough]]></description>
            <category domain="Technology">dx</category>
            <category domain="Technology">typescript</category>
            <category domain="Technology">snippet</category>
            <enclosure url="https://rena.to/api/og//blog/12-the-override-type.png?title=The+%60Override%60+Type&amp;subtitle=When+intersecting+is+not+enough&amp;permalink=%2Fblog%2F12-the-override-type&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2024-07-26T22%3A42%3A06Z" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Demystifying bundlers]]></title>
            <link>https://rena.to//blog/10-demystifying-bundlers</link>
            <guid>10-demystifying-bundlers</guid>
            <pubDate>Tue, 24 Jan 2023 14:47:21 GMT</pubDate>
            <description><![CDATA[A friendly introduction to whats and hows]]></description>
            <category domain="Technology">javascript</category>
            <category domain="Technology">compiler</category>
            <category domain="Technology">bundler</category>
            <enclosure url="https://rena.to/api/og//blog/10-demystifying-bundlers.png?title=Demystifying+bundlers&amp;subtitle=A+friendly+introduction+to+whats+and+hows&amp;permalink=%2Fblog%2F10-demystifying-bundlers&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2023-01-24T14%3A47%3A21Z&amp;cover=https%3A%2F%2Fuser-images.githubusercontent.com%2F3277185%2F218145140-98519188-bea6-4f05-ab53-85339fbb3752.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[GraphQL in TypeScript over the years]]></title>
            <link>https://rena.to//blog/8-graphql-in-typescript-over-the-years</link>
            <guid>8-graphql-in-typescript-over-the-years</guid>
            <pubDate>Wed, 03 Aug 2022 03:50:52 GMT</pubDate>
            <description><![CDATA[How things have changed and still can change]]></description>
            <category domain="Technology">javascript</category>
            <category domain="Technology">react</category>
            <category domain="Technology">dx</category>
            <enclosure url="https://rena.to/api/og//blog/8-graphql-in-typescript-over-the-years.png?title=GraphQL+in+TypeScript+over+the+years&amp;subtitle=How+things+have+changed+and+still+can+change&amp;permalink=%2Fblog%2F8-graphql-in-typescript-over-the-years&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2022-08-03T03%3A50%3A52Z&amp;cover=https%3A%2F%2Fuser-images.githubusercontent.com%2F3277185%2F217987721-5b407d33-12eb-492f-8b8c-9771078b68f3.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Demystifying interpreters]]></title>
            <link>https://rena.to//blog/5-demystifying-interpreters</link>
            <guid>5-demystifying-interpreters</guid>
            <pubDate>Wed, 16 Dec 2020 02:38:43 GMT</pubDate>
            <description><![CDATA[A friendly introduction to whats and hows]]></description>
            <category domain="Technology">javascript</category>
            <category domain="Technology">compiler</category>
            <enclosure url="https://rena.to/api/og//blog/5-demystifying-interpreters.png?title=Demystifying+interpreters&amp;subtitle=A+friendly+introduction+to+whats+and+hows&amp;permalink=%2Fblog%2F5-demystifying-interpreters&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2020-12-16T02%3A38%3A43Z&amp;cover=https%3A%2F%2Fuser-images.githubusercontent.com%2F3277185%2F217677944-8b959fa1-42f1-4ab9-992e-628c8eabf846.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Controlled and uncontrolled inputs]]></title>
            <link>https://rena.to//blog/4-controlled-and-uncontrolled-inputs</link>
            <guid>4-controlled-and-uncontrolled-inputs</guid>
            <pubDate>Wed, 16 Dec 2020 02:17:00 GMT</pubDate>
            <description><![CDATA[Understand the difference and peculiarities of each one]]></description>
            <category domain="Technology">javascript</category>
            <category domain="Technology">react</category>
            <enclosure url="https://rena.to/api/og//blog/4-controlled-and-uncontrolled-inputs.png?title=Controlled+and+uncontrolled+inputs&amp;subtitle=Understand+the+difference+and+peculiarities+of+each+one&amp;permalink=%2Fblog%2F4-controlled-and-uncontrolled-inputs&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2017-08-08T02%3A38%3A43Z&amp;cover=https%3A%2F%2Fuser-images.githubusercontent.com%2F3277185%2F217534804-e8927b9d-8fa2-4df8-a724-b95bbfe8e316.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Tackling responsive elements in React]]></title>
            <link>https://rena.to//blog/1-tackling-responsive-elements-in-react</link>
            <guid>1-tackling-responsive-elements-in-react</guid>
            <pubDate>Tue, 08 Dec 2020 21:38:52 GMT</pubDate>
            <description><![CDATA[...and why I’ve created React Sizes]]></description>
            <category domain="Technology">javascript</category>
            <category domain="Technology">react</category>
            <enclosure url="https://rena.to/api/og//blog/1-tackling-responsive-elements-in-react.png?title=Tackling+responsive+elements+in+React&amp;subtitle=...and+why+I%E2%80%99ve+created+React+Sizes&amp;permalink=%2Fblog%2F1-tackling-responsive-elements-in-react&amp;authorAvatarUrl=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F3277185%3Fu%3Dca403e658061759f49f8108e9af0c8d01318af3a%26v%3D4&amp;authorName=Renato+Ribeiro&amp;authorLogin=renatorib&amp;createdAt=2017-05-02T02%3A38%3A43Z&amp;cover=https%3A%2F%2Fuser-images.githubusercontent.com%2F3277185%2F217986186-68e94e15-4fd6-4f3a-b421-2e4f9f4c651b.png" length="0" type="image/png"/>
        </item>
    </channel>
</rss>