A framework for building native apps with React.
Switch branches/tags
Clone or download
AlicanC and facebook-github-bot Export ImageURISource type (#21305)
Summary:
Exporting ImageURISource because we needed to use it in a custom Image component. This should be a case for other people too since handling of `number` ImageSources and `ImageURISource` ImageSources are way different.

Release Notes:
--------------

[GENERAL] [ENHANCEMENT] [Image] - Export "ImageURISource" Flow type
Pull Request resolved: #21305

Differential Revision: D10024160

Pulled By: rsnara

fbshipit-source-id: f074148345285217014b6ba6735cfdf3508563b5
Latest commit 783cb8e Sep 24, 2018
Permalink
Failed to load latest commit information.
.circleci Deploy to npm on tagged commits only (#21250) Sep 22, 2018
.github Add test case suggestion to PR template Sep 21, 2018
ContainerShip Use Android SDK 27 in React Native Sep 20, 2018
IntegrationTests Update copyright headers to yearless format Sep 11, 2018
Libraries Export ImageURISource type (#21305) Sep 25, 2018
RNTester add x86_64 arm64-v8a support. Fixes #2814 (#18754) Sep 24, 2018
React Fabric: ContextContainer initialization was moved to RCTSurfacePresenter Sep 24, 2018
ReactAndroid add x86_64 arm64-v8a support. Fixes #2814 (#18754) Sep 24, 2018
ReactCommon Fabric: Cleaning up Shadow Tree on surface unregistering Sep 24, 2018
android-jsc add x86_64 arm64-v8a support. Fixes #2814 (#18754) Sep 24, 2018
bots Update copyright headers to yearless format Sep 11, 2018
flow-github Update copyright headers to yearless format Sep 11, 2018
flow Update copyright headers to yearless format Sep 11, 2018
gradle/wrapper fix gradle wrapper issue (#19976) Aug 8, 2018
jest Cleanup the transformer flow types Sep 24, 2018
keystores Apply auto-formatter for BUCK files in fbandroid. Feb 27, 2017
lib Update copyright headers to yearless format Sep 11, 2018
local-cli add x86_64 arm64-v8a support. Fixes #2814 (#18754) Sep 24, 2018
react-native-cli Update copyright headers to yearless format Sep 11, 2018
react-native-git-upgrade Update copyright headers to yearless format Sep 11, 2018
scripts Deploy to npm on tagged commits only (#21250) Sep 22, 2018
third-party-podspecs Updated the glog library version from 0.3.4 to 0.3.5 (#20811) Aug 23, 2018
tools/build_defs/oss Format bzl files with new buildifier Sep 12, 2018
.buckconfig Use Android SDK 27 in React Native Sep 20, 2018
.buckjavaargs limiting BUCK's memory for CI Feb 1, 2016
.editorconfig Fix indent of .gradle files Oct 19, 2016
.eslintignore Split out docs to their own repo Dec 5, 2017
.eslintrc Initial Detox E2E iOS configuration to be run on RNTester (#20235) Jul 30, 2018
.flowconfig Upgrade xplat/js to Flow v0.81 Sep 18, 2018
.flowconfig.android Upgrade xplat/js to Flow v0.81 Sep 18, 2018
.gitattributes Added a .gitattributes file, ensuring that Bash script source files (… Oct 14, 2015
.gitignore Check Flow and run basic packager tests using open source RN config Aug 9, 2018
.npmignore Update .npmignore to include generated bundle file Feb 3, 2017
.nvmrc Add .nvmrc + fix node version for eslint 5 compat (#20109) Jul 31, 2018
CODE_OF_CONDUCT.md Update repo documentation to match other Facebook projects Sep 11, 2018
CONTRIBUTING.md Update repo documentation to match other Facebook projects Sep 11, 2018
DockerTests.md Typo in DockerTests.md (#20009) Jul 3, 2018
Jenkinsfile Container Testing Updates Apr 12, 2017
LICENSE Update copyright headers to yearless format Sep 11, 2018
LICENSE-docs More licenses Mar 25, 2015
README.md Update links & Add Code of Conduct (#21296) Sep 24, 2018
React.podspec Update copyright headers to yearless format Sep 11, 2018
Releases.md Fix typo in Releases.md (#20487) Aug 1, 2018
appveyor.yml Use Android SDK 27 in React Native Sep 20, 2018
build.gradle Update copyright headers to yearless format Sep 11, 2018
cli.js Update copyright headers to yearless format Sep 11, 2018
gradlew fix gradle wrapper issue (#19976) Aug 8, 2018
gradlew.bat Add missing copyright headers (#21000) Sep 7, 2018
jest-preset.json Fix jest snapshot testing on windows May 31, 2018
package.json Bump metro@0.46.0 Sep 24, 2018
react.gradle Update copyright headers to yearless format Sep 11, 2018
rn-cli.config.js Update copyright headers to yearless format Sep 11, 2018
rn-get-polyfills.js Update copyright headers to yearless format Sep 11, 2018
runXcodeTests.sh Update copyright headers to yearless format Sep 11, 2018
settings.gradle add x86_64 arm64-v8a support. Fixes #2814 (#18754) Sep 24, 2018
setupBabel.js Update copyright headers to yearless format Sep 11, 2018
yarn.lock fix ci path problem on Windows (#21203) Sep 19, 2018

README.md

React Native · Circle CI Status Build status npm version PRs Welcome

Learn once, write anywhere: Build mobile apps with React.

See the official React Native website for an introduction to React Native.


Requirements

Supported target operating systems are >= Android 4.1 (API 16) and >= iOS 9.0. You may use Windows, macOS, or Linux as your development operating system, though building and running iOS apps is limited to macOS by default (tools like Expo can be used to get around this).

Building your first React Native app

Follow the Getting Started guide. The recommended way to install React Native depends on your project. Here you can find short guides for the most common scenarios:

How React Native works

React Native lets you build mobile apps using JavaScript. It uses the same design as React, letting you compose a rich mobile UI from declarative components.

With React Native, you don't build a "mobile web app", an "HTML5 app", or a "hybrid app". You build a real mobile app that's indistinguishable from an app built using Objective-C, Java, Kotlin, or Swift. React Native uses the same fundamental UI building blocks as regular iOS and Android apps. You just put those building blocks together using JavaScript and React.

React Native lets you build your app faster. Instead of recompiling, you can reload your app instantly. With hot reloading, you can even run new code while retaining your application state.

React Native combines smoothly with components written in Objective-C, Java, Kotlin, or Swift. It's simple to drop down to native code if you need to optimize a few aspects of your application. It's also easy to build part of your app in React Native, and part of your app using native code directly - that's how the Facebook app works.

The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.

Full documentation

The full documentation for React Native can be found on our website. The source for the React Native documentation and website is hosted on a separate repo, https://github.com/facebook/react-native-website.

The React Native documentation only discusses the components, APIs, and topics specific to React Native (React on iOS and Android). For further documentation on the React API that is shared between React Native and React DOM, refer to the React documentation.

Join the React Native community

See the CONTRIBUTING file for how to help out.

License

React Native is MIT licensed, as found in the LICENSE file.

React Native documentation is Creative Commons licensed, as found in the LICENSE-docs file.