Skip to content

brydar/react-native-web

 
 

Repository files navigation

React Native for Web

Build Status npm version

"React Native for Web" brings React Native's building blocks and touch handling to the Web.

Browser support: Chrome, Firefox, Safari >= 7, IE 10, Edge.

Quick start

NOTE: React Native for Web supports React/ReactDOM 15.4, 15.5, or 15.6.

Install in your existing app using yarn or npm:

yarn add react@15.6 react-dom@15.6 react-native-web

Then read the Getting Started guide.

Documentation

The UI Explorer interactively documents all the supported APIs and Components.

Guides:

Starter kits

Example code

import React from 'react'
import { AppRegistry, Image, StyleSheet, Text, View } from 'react-native'

// Components
const Card = ({ children }) => <View style={styles.card}>{children}</View>
const Title = ({ children }) => <Text style={styles.title}>{children}</Text>
const Photo = ({ uri }) => <Image source={{ uri }} style={styles.image} />
const App = () => (
  <Card>
    <Title>App Card</Title>
    <Photo uri="/some-photo.jpg" />
  </Card>
)

// Styles
const styles = StyleSheet.create({
  card: {
    flexGrow: 1,
    justifyContent: 'center'
  },
  title: {
    fontSize: '1.25rem',
    fontWeight: 'bold'
  },
  image: {
    height: 40,
    marginVertical: 10,
    width: 40
  }
})

// App registration and rendering
AppRegistry.registerComponent('MyApp', () => App)
AppRegistry.runApplication('MyApp', { rootTag: document.getElementById('react-root') })

Related projects

License

React Native for Web is BSD licensed.

Packages

No packages published

Languages

  • JavaScript 99.9%
  • Other 0.1%