<?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: Viet Tran</title>
    <description>The latest articles on Forem by Viet Tran (@viettranbhsoft).</description>
    <link>https://forem.com/viettranbhsoft</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%2F1200571%2F5b9db58e-8aad-4a73-914d-87c9426d0046.png</url>
      <title>Forem: Viet Tran</title>
      <link>https://forem.com/viettranbhsoft</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/viettranbhsoft"/>
    <language>en</language>
    <item>
      <title>7 React Native Open-Source Projects for Mobile App Development Mastery</title>
      <dc:creator>Viet Tran</dc:creator>
      <pubDate>Mon, 06 Nov 2023 07:45:02 +0000</pubDate>
      <link>https://forem.com/viettranbhsoft/7-react-native-open-source-projects-for-mobile-app-development-mastery-4bmj</link>
      <guid>https://forem.com/viettranbhsoft/7-react-native-open-source-projects-for-mobile-app-development-mastery-4bmj</guid>
      <description>&lt;p&gt;React Native stands as a powerful tool for crafting cross-platform mobile applications. &lt;a href="https://bachasoftware.com/technologies/mobile-development/react-native"&gt;React Native app development&lt;/a&gt; services are on the rise, creating a challenge for developers seeking to streamline their mobile app creation process through open-source projects. In this article, we'll delve into 7 React Native open-source initiatives that can elevate your mobile app development journey.&lt;/p&gt;

&lt;h2&gt;
  
  
  React Native Elements
&lt;/h2&gt;

&lt;p&gt;Let's begin with the initial React Native open-source project, React Native Elements. React Native Elements is a robust UI toolkit designed to streamline the creation of visually captivating and user-friendly mobile apps using React Native. It provides a comprehensive UI toolkit complete with pre-designed components and customizable styles. With React Native Elements, developers have access to a rich set of building blocks, including buttons, icons, forms, and more, simplifying the app development process. Its extensive library of UI elements simplifies the creation of aesthetically pleasing and intuitive mobile apps. &lt;br&gt;
By leveraging this project, developers can significantly accelerate their development process and ensure a consistent and engaging user experience. React Native Elements' versatility allows seamless integration into various app categories, making it an essential tool for developers aiming to build feature-rich, cross-platform apps with minimal effort and maximum visual appeal. You can access this UI toolkit by visiting the &lt;a href="https://github.com/react-native-elements/react-native-elements"&gt;React Native Element GitHub repository&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  React Navigation
&lt;/h2&gt;

&lt;p&gt;React Navigation stands as a prominent and extensively adopted library for efficiently managing navigation within React Native applications. It offers a versatile range of navigation options, catering to diverse app design requirements.&lt;br&gt;
This open-source project provides essential navigation patterns, including tab navigation, stack navigation, and drawer navigation, ensuring a smooth and intuitive user experience. React Navigation simplifies the creation of navigational structures, making it accessible to developers regardless of their level of expertise.&lt;br&gt;
React Navigation plays a pivotal role in shaping the navigation flow of React Native applications, ensuring seamless transitions between screens and enhancing overall usability. It is a vital tool for React Native developers seeking effective navigation solutions in their mobile app development projects.&lt;br&gt;
If you're interested in trying out React Navigation, you can access their GitHub repository through &lt;a href="https://github.com/react-navigation/react-navigation"&gt;this link&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  React Native Maps
&lt;/h2&gt;

&lt;p&gt;The next noteworthy React Native open-source project is React Native Maps. This powerful library simplifies the integration of maps and location-based functionalities into React Native applications, meeting the increasing demand for location services in mobile apps. &lt;br&gt;
React Native Maps empowers developers to seamlessly incorporate dynamic maps, geolocation tracking, and location-aware features into their apps. The library offers a comprehensive suite of tools for creating interactive maps, and custom markers and managing user interactions. This versatility makes it suitable for a wide range of applications, from navigation apps to location-aware social platforms. &lt;br&gt;
By embracing React Native Maps, developers can elevate user experiences by introducing interactive maps and location-based functionality, resulting in compelling, context-aware applications across various industries. This open-source project serves as an invaluable resource for enhancing the geographical and location-based aspects of React Native app development.&lt;br&gt;
Explore the &lt;a href="https://github.com/react-native-maps/react-native-maps"&gt;React Native Maps GitHub repository&lt;/a&gt; for more information.&lt;/p&gt;

&lt;h2&gt;
  
  
  Redux Persist
&lt;/h2&gt;

&lt;p&gt;Redux Persist, accessible via &lt;a href="https://github.com/rt2zz/redux-persist"&gt;its GitHub repository&lt;/a&gt;, proves to be an indispensable asset for React Native developers. It simplifies the intricate task of persisting and rehydrating a Redux store, ensuring the preservation of your application's state, even in the event of an app restart.&lt;br&gt;
By integrating Redux Persist into your React Native projects, you can deliver a seamless and uninterrupted user experience. This library efficiently manages the persistence of essential app data, which holds paramount importance in cases where users must maintain their state and preferences across multiple sessions. The library provides a selection of storage engines, enabling you to pick the one that aligns best with your specific requirements.&lt;br&gt;
Redux Persist equips you to build more resilient applications that safeguard user data and settings, ultimately resulting in an elevated user experience and heightened user satisfaction. This library stands as a cornerstone for React Native developers aiming to fortify their applications with robust and enduring data persistence.&lt;/p&gt;

&lt;h2&gt;
  
  
  Lottie React Native
&lt;/h2&gt;

&lt;p&gt;Lottie React Native is a dynamic library that empowers React Native developers to infuse their applications with captivating and interactive animations through the Lottie animation framework. This open-source project streamlines the process of integrating animations into your app's user interface, enhancing the visual appeal and engagement of your mobile applications.&lt;br&gt;
Using Lottie React Native, developers gain access to an extensive collection of pre-built animations, making it easier to create compelling user experiences. Whether it's delightful loading spinners, eye-catching transitions, or intricate illustrative animations, this library simplifies the integration and management of animations.&lt;br&gt;
Check out the &lt;a href="https://github.com/lottie-react-native/lottie-react-native"&gt;Lottie React Native GitHub repository&lt;/a&gt; to learn more. &lt;/p&gt;

&lt;h2&gt;
  
  
  React Native Expo
&lt;/h2&gt;

&lt;p&gt;The next React Native open-source project is Expo. React Native Expo is an open-source framework and development platform built on top of React Native. It serves as a valuable resource for mobile app developers, simplifying the process of creating React Native applications. Expo offers a comprehensive set of tools, libraries, and services designed to streamline the development workflow.&lt;br&gt;
Key features of Expo include access to pre-configured development environments, simplification of the build process, and a wide range of native modules for accessing device features. With Expo, developers can efficiently manage assets, handle push notifications, and manage device permissions. It also provides a convenient means of testing and sharing apps with others, including over-the-air updates.&lt;br&gt;
Explore the &lt;a href="https://github.com/expo/expo"&gt;React Native Expo GitHub repository&lt;/a&gt; to have more insights.&lt;/p&gt;

&lt;h2&gt;
  
  
  React Native Firebase
&lt;/h2&gt;

&lt;p&gt;Last but not least is React Native Firebase. It is a valuable open-source library tailored to simplify the integration of Firebase services into React Native applications. Firebase, a comprehensive cloud-based platform, brings a wealth of features that significantly enhance the functionality of your mobile apps.&lt;br&gt;
This library facilitates the incorporation of Firebase services like user authentication, real-time databases, and cloud functions, expanding your app's capabilities. With React Native Firebase, you can harness Firebase's power to streamline user management, store and retrieve data in real time, and execute cloud functions seamlessly.&lt;br&gt;
React Native Firebase proves to be an indispensable asset for React Native developers seeking to leverage Firebase's robust and scalable services in their applications, thereby providing enhanced user experiences and dynamic functionality.&lt;br&gt;
If you are interested in React Native Firebase, check out &lt;a href="https://github.com/invertase/react-native-firebase"&gt;this GitHub repository&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Note
&lt;/h2&gt;

&lt;p&gt;Learning is a continuous journey, and there's always something new to explore. If you're interested in discovering more about other React Native open-source projects, simply follow this &lt;a href="https://github.com/invertase/react-native"&gt;link&lt;/a&gt;. The more knowledge you acquire, the greater your opportunities for advancing your career.&lt;br&gt;
Stay tuned to my blog, where I'll share insights not only about React Native but also about &lt;a href="https://bachasoftware.com/technologies/mobile-development/flutter"&gt;Flutter app development&lt;/a&gt; and technologies. With over six years of experience in mobile app development and currently serving as a React Native services team leader at BHSoft, a &lt;a href="https://bachasoftware.com/"&gt;top software company in Vietnam&lt;/a&gt;, I'm well-equipped to provide valuable guidance.&lt;/p&gt;

&lt;p&gt;If you're considering assistance with your mobile app project, feel free to leave a comment. I'm here to help you bring your app ideas to life.&lt;br&gt;
Happy coding!&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>mobile</category>
      <category>tutorial</category>
      <category>opensource</category>
    </item>
    <item>
      <title>How to Install Your Expo React Native Application on iOS Without Using Xcode or MacOS</title>
      <dc:creator>Viet Tran</dc:creator>
      <pubDate>Fri, 03 Nov 2023 03:00:45 +0000</pubDate>
      <link>https://forem.com/viettranbhsoft/how-to-install-your-expo-react-native-application-on-ios-without-using-xcode-or-macos-11en</link>
      <guid>https://forem.com/viettranbhsoft/how-to-install-your-expo-react-native-application-on-ios-without-using-xcode-or-macos-11en</guid>
      <description>&lt;p&gt;&lt;a href="https://bachasoftware.com/technologies/mobile-development/react-native"&gt;React Native app development&lt;/a&gt; and &lt;a href="https://expo.dev/"&gt;Expo&lt;/a&gt; provide a convenient and efficient way to create cross-platform apps. One of the challenges developers often face is installing their Expo React Native application on iOS devices without access to Xcode or a macOS environment. This blog will explore alternative methods to install your Expo React Native application on iOS without relying on Xcode or a macOS machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;p&gt;Before we begin, make sure you have the following prerequisites in place:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A working Expo React Native project: Ensure that you have a functional Expo React Native project ready for deployment. This project should be compatible with iOS devices.&lt;/li&gt;
&lt;li&gt;An iOS device: You will need an iOS device, such as an iPhone or iPad, to install and test your Expo React Native application.&lt;/li&gt;
&lt;li&gt;A stable internet connection: To download and install the required tools and dependencies, make sure you have a stable internet connection.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Method 1: Using the Expo Client App
&lt;/h2&gt;

&lt;p&gt;The easiest way to install and test your Expo React Native application on iOS is by using the Expo Client app. This method allows you to instantly load and run your app on a real iOS device without the need for Xcode or a macOS environment. Follow these steps:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Install the Expo Client app:&lt;/strong&gt; On your iOS device, open the App Store and search for "Expo Client." Download and install the Expo Client app on your device.&lt;br&gt;
&lt;strong&gt;2. Build your Expo project:&lt;/strong&gt; In your terminal, navigate to your Expo React Native project directory. Run the command &lt;code&gt;expo build:ios&lt;/code&gt; to build your project for iOS. This command will generate a standalone iOS app file known as an IPA (iOS App Store Package).&lt;br&gt;
&lt;strong&gt;3. Publish your app:&lt;/strong&gt; After the build process is complete, run &lt;code&gt;expo publish&lt;/code&gt; to publish your app to Expo's servers. This step is necessary for the Expo Client app to be able to fetch and load your app remotely.&lt;br&gt;
&lt;strong&gt;4. Open the Expo Client app:&lt;/strong&gt; Launch the Expo Client app on your iOS device.&lt;br&gt;
&lt;strong&gt;5. Scan the QR code:&lt;/strong&gt; In your terminal, you will see a QR code generated by Expo after publishing your app. Use the camera on your iOS device to scan the QR code displayed in the terminal. The Expo Client app will automatically detect the QR code and load your app.&lt;br&gt;
&lt;strong&gt;6. Test your app:&lt;/strong&gt; Your Expo React Native application will now be loaded and running on your iOS device. You can interact with and test your app just as you would with any other installed app.&lt;br&gt;
Using the Expo Client app provides a convenient way to test your Expo React Native application on iOS without Xcode or macOS. However, note that this method requires an internet connection to load your app remotely.&lt;/p&gt;

&lt;h2&gt;
  
  
  Method 2: Over-the-Air (OTA) Updates
&lt;/h2&gt;

&lt;p&gt;Another way to install your Expo React Native application on iOS without Xcode or macOS is by using Over-the-Air (OTA) updates. This method allows you to distribute and update your app without going through the App Store review process. Follow these steps:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Configure OTA updates:&lt;/strong&gt; In your Expo React Native project, ensure OTA updates are enabled. This can be done by configuring the &lt;code&gt;app.json&lt;/code&gt; file. Set the &lt;code&gt;updates.enabled&lt;/code&gt; property to &lt;code&gt;true&lt;/code&gt; to enable OTA updates.&lt;br&gt;
&lt;strong&gt;2. Build your Expo project:&lt;/strong&gt; Run the command &lt;code&gt;expo build:ios&lt;/code&gt; to build your project for iOS. This command will generate an IPA file for your app.&lt;br&gt;
&lt;strong&gt;3. Distribute the IPA file:&lt;/strong&gt; Once the build process is complete, distribute the generated IPA file to your iOS device. You can use various methods, such as email, cloud storage, or a file-sharing service, to transfer the IPA file to your device.&lt;br&gt;
&lt;strong&gt;4. Install the app:&lt;/strong&gt; On your iOS device, open the IPA file using a file manager or file-sharing app. Follow the on-screen instructions to install the app on your device.&lt;br&gt;
&lt;strong&gt;5. Test your app:&lt;/strong&gt; Your Expo React Native application will be installed and ready to test on your iOS device. You can launch the app and interact with it just like any other installed app.&lt;br&gt;
Using OTA updates allows you to distribute and install your Expo React Native application on iOS devices without relying on Xcode or macOS. This method provides more flexibility in distributing and updating your app.&lt;/p&gt;

&lt;h2&gt;
  
  
  Method 3: Using App Stores or TestFlight
&lt;/h2&gt;

&lt;p&gt;If you prefer a more traditional approach, you can consider using third-party app stores or Apple's TestFlight platform to distribute and install your Expo React Native application on iOS. Here's how:&lt;br&gt;
&lt;strong&gt;1. Build your Expo project:&lt;/strong&gt; Run the command &lt;code&gt;expo build:ios&lt;/code&gt; to build your project for iOS. This will generate an IPA file for your app.&lt;br&gt;
&lt;strong&gt;2. Upload to a third-party app store:&lt;/strong&gt; There are various third-party app stores available, such as AppValley, AppCake, or Panda Helper. Upload your IPA file to one of these app stores, following their respective guidelines. Users can then install your app from the app store directly on their iOS devices.&lt;br&gt;
&lt;strong&gt;3. Use TestFlight:&lt;/strong&gt; Apple's TestFlight platform allows you to distribute your app to testers for testing and feedback. You can upload your IPA file to TestFlight and invite testers to install and test your app. TestFlight provides a controlled environment for testing and can be a helpful method for gathering feedback before releasing your app to the App Store.&lt;br&gt;
Using third-party app stores or TestFlight provides a more traditional app distribution process for your Expo React Native application. This method allows you to reach a wider audience and gather valuable feedback from testers before releasing your app.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Notes
&lt;/h2&gt;

&lt;p&gt;Installing your Expo React Native application on iOS devices without using Xcode or macOS is possible through various alternative methods. If you plan to rebuild your application after the initial build, the good news is that all certificates, keys, and provisioning profiles are saved, so you won't need to repeat those steps. However, if you want to start fresh and remove all saved files, you can use the following command when building your app instead of &lt;code&gt;expo build:ios&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;If you haven't set up your application icons, you can refer to this tutorial for an easy guide on configuring them using Expo.&lt;br&gt;
If you face any issues with these steps, don't hesitate to contact me. Whether you're interested in hiring a &lt;a href="https://bachasoftware.com/services/development-team-on-demand"&gt;dedicated development team&lt;/a&gt; or require &lt;a href="https://bachasoftware.com/services/technology-consulting-services"&gt;IT consulting and services&lt;/a&gt;, our company is here to help. We are BHSoft, a &lt;a href="https://bachasoftware.com/"&gt;top software company in Vietnam&lt;/a&gt;, devoted to delivering high-quality technology solutions tailored to meet our client's goals. We look forward to assisting you.&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>tutorial</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
