This is a guest post from Thomino - he is the creator of Native Templates and is a great follow on X.
…
I have been building for the web since the era of IE6. I remember using sliced images for box shadows, transparent GIFs for rounded corners, and nested tables for structure. Those were the "Dark Ages" of front-end development.
Luckily, times have changed. With the combination of Expo, NativeWind and Reanimated designing apps is a breeze. In fact, I don’t even use Figma anymore. I design directly in code with Expo Go live preview.
Let me show you how I build my apps with the reusable components that I use in my workflows. These components allow me to design directly in the editor. I’ll also cover how I handle theming and how to build an animated Theme toggle.
Reusable Components
Each app is different, but most of them share many screens, flows and components. That’s why I decided to build templates that I can always use as a base on a new project according to my needs. The key to doing this effectively was to create reusable components that could be styled easily according to the particular app.
Here are a few examples I’ve implemented in NativeTemplates.
Building a flexible header component with NativeWind
Arguably the most important and fundamental one. It was very important to make the header component flexible and easy to adjust according to one’s needs.
Creating animated tab navigation in React Native
Choose an icon, animation or avatar.
Building multi-step forms and onboarding flows
I use this one very heavily. It is perfect for on-boardings and other user flows. Onboarding is essential for activating your users and reducing that early churn.
Reusable chip components for filters and forms
This one is very basic but used heavily for filters or forms.
You can check all the components in my docs.
Implementing theme variables with NativeWind
NativeWind makes theming incredibly powerful. By using vars, we can toggle the entire theme of an app in one file. This is how I ensure that light and dark modes aren't just an afterthought, but a core part of the design system.
Building an animated dark mode toggle with Reanimated
Pre-built screen templates for Login, Onboarding, and Settings
With a solid component base, building templates is super fast. There are screens that almost every app has in common with like Login, Signup, Onboarding, Profile Settings, Privacy, etc. But here, all the components come to life!
Expo has given us the platform, and NativeWind has given us the styling language to make apps that don't just work but also look amazing.
If you're looking to jumpstart your next project, you can explore all React Native Expo Templates here or my Expo Playground on GitHub.


