React: Native, IOT & AR/VR

React Native is the step ahead advancement of React which was a JavaScript code library developed by Facebook and Instagram and released on Github in 2013

It is an open source JavaScript framework used for building user interfaces, but instead of targeting the browser, it targets mobile platforms. Unlike mobile web/hybrid apps, native apps are hard to be distinguished from the apps built using objective c or java. It supports both iOS and Android platforms at present with the potential to accommodate any future coming platforms. It provides a better experience for developers by supporting the cross-platform development which is an improvement over traditional mobile development.

The idea behind React Native can be best described by “Learn once, write anywhere“, enabling developers to use the same development approach for both desktop/browser and mobile apps. It provides the feature to reuse the code across the web and on mobile. Developers won’t have to build the different apps across each operating system as it allows more efficient code sharing across iOS, Android, and the Web, without sacrificing the end user’s experience or application quality leading to faster mobile development. If one wants to develop mobile applications for more than just one platform, React Native is the best option.

Instead of recompiling, the app can be reloaded instantly with Hot Reloading while retaining the application state. 

React Native uses the Flexbox Layout for arranging the elements in a user interface. It extends the core react library as it has the following predefined core components in addition :

  1. The View which defines the layout and one can define the styles in it.
  2. The Image core component is used to display several types of images.
  3. The Text component is used to display text irrespective of the platform on which the code is running.

React Native can access platform options just like the phone camera, or the user’s location as they additionally expose JavaScript interfaces for platform APIs. Hence, it can also be used for IOT and AR/VR development.

The Internet of things (IOT) is the collection of physical devices like mobile phones, microwave, television etc. embedded with electronics, sensors, and actuators along with connectivity which allows them to connect and exchange information. Devices and objects with inbuilt sensors are connected to an Internet of Things platform, which integrates knowledge from the various devices and applies to generate smart decision based on real-time information that helps to save a lot of time, energy and money.

React – IOT

It is the combination of Fiber and a wrapper for Johny-five JavaScript framework (WIP) with underlying React renderer. WIP has platform-specific IO Plugins which allows communication with any hardware.

At the top, the UI code is written in javascript with React Native. In the middle, there exists a bridge layer that behaves as an intermediator to communicate between the javascript layer and IOT SDK.

React – Augmented reality (AR) & Virtual reality (VR)

Augmented reality and virtual reality are the two confusing terms which have changed the ways to look around the world by the means of technology.

Augmented reality (AR) is a technology that uses an existing reality and adds a meaning to it by giving the ability to the user to interact it with by the means of superimposed computer-generated images to make it feel more, whereas Virtual reality (VR) is an artificial, computer-generated scenario that simulates a realistic experience. VR provides an interactive 3D-world that you can explore and feel like being there, both mentally and physically.

The data is collected by mobile device’s inbuilt sensors such as the camera, accelerometer, GPS etc. The essential operating principles of augmented reality applications are based on location capturing and the transformation of data captured whereas for virtual reality, these are 3D images that appear to be life-sized from the perspective of the user and the ability to track a user’s motions and correspondingly adjust the images on the user’s display.

React VR is a continuation of React Native which takes it to the next level, creating UIs and 3D scenes in virtual reality by making use of three.js, javascript 3D library. It introduces the concepts of 2D and 3D scenes along with transformations and panoramas. It allows objects to be placed in 3D space and rendered in VR.

The camera images are continuously recorded in each frame. VR apps need to be rendered at 60-90 frames per second or even faster because lower frame-rate may lead to a headache. These images are then analyzed and the application gets data of each pre-installed marker in a frame with respect to these images especially turn and location. This data is further utilized for the rendering purpose over the real image captured by the camera to create 3D models.

React VR does not require a VR headset to run. It can also be used in the browser or a mobile phone to create interactive 360-degree experiences.

Mapu

I am a technology freak with passion for UI technology.

Leave a Reply