<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Thomino</title>
    <description>The latest articles on Forem by Thomino (@thominodesign).</description>
    <link>https://forem.com/thominodesign</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1618749%2F34d926db-53c3-4865-988e-da434ec54ad8.png</url>
      <title>Forem: Thomino</title>
      <link>https://forem.com/thominodesign</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/thominodesign"/>
    <language>en</language>
    <item>
      <title>React Native + Expo Templates That Just Work</title>
      <dc:creator>Thomino</dc:creator>
      <pubDate>Tue, 20 May 2025 10:24:33 +0000</pubDate>
      <link>https://forem.com/thominodesign/react-native-expo-templates-that-just-work-20hn</link>
      <guid>https://forem.com/thominodesign/react-native-expo-templates-that-just-work-20hn</guid>
      <description>&lt;p&gt;I’ve been doing front-end development &lt;strong&gt;since the dark ages of IE5.&lt;/strong&gt; Mostly working on web apps for most of the time I found working on mobile Apps a very refreshing change. When i discovered &lt;strong&gt;React Native, Expo and Nativewind&lt;/strong&gt; i fell in love with it and jumped into it full on and created templates that i can use as a base for almost any project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.native-templates.com/" rel="noopener noreferrer"&gt;https://www.native-templates.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I was always re-creating same flows, components and screens over and over again, especially:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Setting up onboardings&lt;/li&gt;
&lt;li&gt;Styling forms&lt;/li&gt;
&lt;li&gt;Handling theme toggles, product variants, and reusable layouts&lt;/li&gt;
&lt;li&gt;Checkout logic&lt;/li&gt;
&lt;li&gt;Adding/Removing products, services, posts, etc..&lt;/li&gt;
&lt;li&gt;Everything has to look great in dark mode of course&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The templates are built with:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Expo&lt;/li&gt;
&lt;li&gt;React Native&lt;/li&gt;
&lt;li&gt;NativeWind&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’ve been struggling to find well-designed starter templates for apps and thought it would be great to do them myself and share them with the world. You can check &lt;strong&gt;live Expo go demos&lt;/strong&gt; on the website.&lt;/p&gt;

&lt;p&gt;I’ve commited to add 1–2 template every month, and will do my best to do so. This is my first ever side project, so very curious how it turns out.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1922923597149945948-867" src="https://platform.twitter.com/embed/Tweet.html?id=1922923597149945948"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1922923597149945948-867');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1922923597149945948&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1923200005747126658-400" src="https://platform.twitter.com/embed/Tweet.html?id=1923200005747126658"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1923200005747126658-400');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1923200005747126658&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1921065757888127249-399" src="https://platform.twitter.com/embed/Tweet.html?id=1921065757888127249"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1921065757888127249-399');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1921065757888127249&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1916783798962040922-516" src="https://platform.twitter.com/embed/Tweet.html?id=1916783798962040922"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1916783798962040922-516');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1916783798962040922&amp;amp;theme=dark"
  }



&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>tailwindcss</category>
      <category>typescript</category>
      <category>expo</category>
    </item>
  </channel>
</rss>
