Microsoft releases ReactXP to open source

Microsoft has released to open source ReactXP — a library for building cross-platform apps (with a heavy emphasis on User Interfaces) based on the React JavaScript library and framework.

Microsoft says it is now scheduling roughly monthly releases of ReactXP to run approximately in line to React Native releases.

Thin & lightweight

ReactXP itself is best described as a thin and lightweight cross-platform abstraction layer built on top of React and React Native.

Question: what does thin and lightweight mean in this sense?

Answer: The core software components and APIs are limited to the functionality required for almost all applications.

As detailed by mspoweruser, “[ReactXP] implements foundational components that can be used to build more complex components. It also implements a collection of API namespaces that are required by most applications. It supports the following platforms: web (React JS), iOS (React Native), Android (React Native) and Windows UWP (React Native).”

React on React

ReactXP is designed with cross-platform development in mind. In general, it exposes APIs, components, props, styles and animation parameters that are implemented in a consistent way across React JS (HTML) and React Native for iOS and Android.

According to the ReactXP developer portal (Microsoft GitHub), the authors of React use the phrase ‘learn once, write anywhere’.

“With React and React Native, your web app can share most its logic with your iOS and Android apps, but the view layer needs to be implemented separately for each platform. We have taken this a step further and developed a thin cross-platform layer we call ReactXP,” says the team.

If developers write an app to this abstraction, they can share view definitions, styles and animations across multiple target platforms — and, still provide platform-specific UI variants selectively where desired.