Hey notJust Developers, Engineers at Infinite Red and Callstack have recently done amazing work in the React Native community. In today's newsletter, we highlight the top three stories from these teams.
- Introducing Ignite X ๐
- New React Native Bottom Tabs out ๐ฅ
- Re.Pack now 5x faster by Rspack ๐ฏ
Now, letโs explore each news story in detail.
This issue is Sponsored by Genezioโ
โGenezio is a powerful serverless platform for building full-stack web and mobile applications in a scalable and cost-efficient way. Some of the key benefits of Genezio are: reduced cold start time, easy deployment and cost-effective pricing.
What I loved about Genezio, is their compatibility with a wide range of Frameworks. I recently deployed to Genezio the Backend of an e-commerce app build with Express and it worked like a charm.
โTry Genezio for free and deploy your full-stack apps with ease.
Introducing Ignite X ๐
This week, the Infinite Red team released Ignite V10.0, now called Ignite X. Ignite was first released in early 2016. It is a CLI and a battle-tested boilerplate for both Expo and bare React Native apps. With over 17,000 stars and hundreds of contributors, Ignite helps reduce the costs of starting a new app. Now, Ignite X makes it even easier and faster to start a new React Native app.
Whatโs exciting in Ignite X?
- Expo Prebuild (CNG system) as default: Ignite X now uses the Expo CNG system to automatically edit native platform files (e.g.,
AndroidManifest.xml
, Info.plist
) while installing native dependencies (such as camera library). No more manual updates are needed for those files! All you need to do is set up the config plugins!
- Easy dark mode support.
- Experimental support for Expo Router (A file-based routing system).
- MMKV (react-native-mmkv) as AsyncStorage which is very fast & easy to use.
- New i18n configuration with react-i18next for smooth internationalization (e.g., English, Arabic).
- Improved keyboard avoidance for text input by using react-native-keyboard-controller.
- Pre-configured for React component testing with react-native-testing-library, saving your team up to a week of work ๐ค.
You might already be impressed and thinking, "Oh, yes, Ignite X is the perfect name for Ignite V10.0 with all these amazing features and improvements." Don't waitโtry it today!
New React Native Bottom Tabs out ๐ฅ
Another great news is that Oskar (engineer at @callstackio) has been working with Native Bottom Tabs for the past couple of weeks to replace the popular React Navigation Bottom Tabs (@react-navigation/bottom-tabs
), which was written in JavaScript ๐ฌ. Finally, last week, he released the โReact Native Bottom Tabsโ library. This new library uses native platform elements (SwiftUI's TabView
on iOS and BottomNavigationView
on Android) to ensure a native look across different platforms (e.g., iOS, Android, visionOS).
JS Vs Native Bottom Tabs
- Instead of recreating the UI (with JS), Native Tabs uses direct native platform elements to create the tabs.
- Native Tabs can adapt to the platform interfaces (e.g., tvOS displays tabs as a sidebar), whereas JS Tabs are always positioned at the bottom on all platforms ๐คฆ.
- Native Tabs use the platform's designs (e.g., Material's BottomNavigationView design in Android), while JS tabs look the same on all platforms.
- Native Tabs handle animations (e.g., tabs icon bouncing) more smoothly than JS tabs because UI (native) threads are faster than JS threads.
NOTE:
Oskar mentioned that 95% of your React Navigation Bottom Tabs code remains unchanged; just switch the import to {createNativeBottomTabNavigator}
. It now supports both Expo Router & One framework ๐ฏ.
Re.Pack now 5x faster by Rspack ๐ฏ
In May this year (2024), Jakub from Callstack announced a preview of Re.Pack V5, and finally last week, he released Re.Pack V5 Alpha. Re.Pack is a more advanced toolkit than the default Metro for bundling JavaScript code & images in React Native apps. Re.Pack was created to bring the Webpack ecosystem, a popular asset bundler for the web, to React Native. Webpack handles complex pre-processing for assets like SVGs (reducing SVG size), does advanced bundle analysis, uses advanced caching techniques, and aggressively eliminates unused code to improve bundle size and performance. Metro has only a few of these features ๐โโ๏ธ.
Whatโs new in V5?
โStarting from V5, Re.Pack uses Rspack, which is written in Rust and offers much faster build times compared to Webpack. You can switch between Rspack and Webpack if needed. Rspack supports many Webpack plugins and loaders (assets pre-processors that can reduce sizes at build time), meaning it has almost all the capabilities of Webpack but with super-fast build times that significantly improve dev mode startup performance. Jakub mentioned that Re.Pack is now 5x faster with Rspack than with Webpack. Thatโs crazy ๐!
Thatโs it ๐
React Native is quickly becoming the top choice for cross-platform developers (even better than native ๐คทโโ๏ธ). We're seeing new SDKs that make React Native faster and feel more like native apps. Plus, new frameworks like One are shaking things up and making the React Native ecosystem more exciting.
๐ด Join me live
This Thursday we will build an Ecommerce Admin Dashboard with Next.js. It's going to be a tutorial packed with value, so set a reminder and don't miss it out ๐
โโ
โ๐ In case you missed it
Building a scalable API with NodeJS
Youโll learn how to build a scalable and production-ready REST API for an e-commerce application using NodeJS, TypeScript, and Express. Weโll guide you step-by-step through essential backend tools like Drizzle for database interactions and Postgres for data storage, all while integrating Genezio to simplify deployment.
|
|
Build an e-commerce app with React Native, Expo and Gluestack
Weโll build the frontend UI for our e-commerce app using React Native, Expo, and Gluestack. Youโll learn how to design a responsive interface while integrating with the REST API we created in part one. Weโll also cover managing server-side data with TanStack Query to keep everything efficient.
|
๐ฅ Press worthy
1๏ธโฃ React Native 0.76 RC.6 has just been released. The stable 0.76 drops next week!
2๏ธโฃ Software Mansion released React Native SVG v15.8.0 with new filters FeFlood (fills an area by color) & FeBlend (merges two images in SVG for special effects); supports 0.76.
3๏ธโฃ Alireza Introduced new react-native-fast-confetti, built with Skia and Reanimated ๐.
4๏ธโฃ BottomSheet v5 is finally out, supporting Web, Dynamic Sizing, and FlashList Integration.
5๏ธโฃ NativeWind v4.1.16 is now live with support for Radon IDE, built by Software Mansion.
โ
โ
Did you learn something new today?
If you found this email valuable, forward it to one friend or coworker who can also benefit from it. That would be much appreciated ๐
The newsletter was written by Anis and edited by Vadim Savin.
|
|
Vadim Savin
Helping you become a better developer together with the notJust.dev team
|
Whenever youโre ready, there are 3 ways I can help you:
- โReact Native Mastery โ The Ultimate React Native & Expo Course. Build 7 real-world projects and finally master mobile development with React Native. Launching in November 26.
โJoin the Waitlist to secure your spot.
- โnotJust.Incubator โ Turn your mobile app idea into a successful product. Our 3-month incubation program offers mentorship, domain expertise, and a proven formula for launching a mobile app with a solid business model.
Got an idea? Apply now!โ
- โnotJust.Hack - Ready to build that app youโve always dreamed of? Join us this December for a month-long Hackathon. This is your chance to create, pick up new skills, and bring your vision to life. As always, the top project will be gifted prizes, with the biggest being Macbook Pro M4. Join here!โ
|
|
โ