A framework for building native macOS apps with React.
Перейти к файлу
Christopher Hogan a9f4ec2bf7 lint fixes and merge conflict resolution for Mac 2019-03-28 10:56:16 -07:00
.ado sync from internal (#6) 2019-03-07 14:57:20 -08:00
.appveyor Bump to Android Build Tools 28.0.3, Gradle 4.10.2, Gradle Plugin 3.2.1 2019-01-24 12:57:54 +01:00
.circleci facebook 0.58.6 merge with conflicts (although some iOS files had conflicts removed) 2019-03-11 13:49:58 -07:00
.github merge master 2019-03-23 16:38:05 -07:00
ContainerShip facebook 0.58.6 merge with conflicts (although some iOS files had conflicts removed) 2019-03-11 13:49:58 -07:00
Folly Add missing files from internal repo sync (#8) 2019-03-07 21:04:13 -08:00
IntegrationTests merge master 2019-03-23 16:38:05 -07:00
Libraries lint fixes and merge conflict resolution for Mac 2019-03-28 10:56:16 -07:00
RNTester lint fixes and merge conflict resolution for Mac 2019-03-28 10:56:16 -07:00
React update mac libraries 2019-03-28 10:29:46 -07:00
ReactAndroid merge master 2019-03-23 16:38:05 -07:00
ReactApple Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
ReactCommon iOS building/running fixes 2019-03-20 11:17:57 -07:00
bots Make PR template consistent with Changelog (#22117) 2018-11-04 11:29:52 -08:00
danger Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
double-conversion sync from internal (#5) 2019-03-05 21:47:37 -08:00
flow Prettify remaining unprettified files (#21327) 2018-09-25 19:50:08 -07:00
flow-github Bring missing changes to 0.58-stable branch 2019-01-28 14:56:57 +01:00
glog merge master 2019-03-23 16:38:05 -07:00
gradle/wrapper facebook 0.58.6 merge with conflicts (although some iOS files had conflicts removed) 2019-03-11 13:49:58 -07:00
jest iOS 0.58.6 merge building, linking, running 2019-03-19 14:09:38 -07:00
jsc Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
keystores Use fb_native_wrapper for all targets 2018-10-31 11:47:42 -07:00
lib Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
local-cli lint fixes and merge conflict resolution for Mac 2019-03-28 10:56:16 -07:00
metadata Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
processor Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
react-native-cli Fix rn-cli linting issues (#22099) 2018-11-04 21:11:58 -08:00
react-native-git-upgrade Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
scripts lint fixes and merge conflict resolution for Mac 2019-03-28 10:56:16 -07:00
stubs/glog iOS 0.58.6 merge building, linking, running 2019-03-19 14:09:38 -07:00
template/android/app/src/debug improve Android Network Security config (#23429) 2019-02-18 14:53:38 +01:00
third-party-podspecs Fix Xcode 10 builds (broken by folly upgrade) (#22394) 2018-11-27 12:25:12 +01:00
tools/build_defs RN: Missing Copyright Headers 2018-10-31 01:37:26 -07:00
v8-docker-build Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
website/server Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
.buckconfig Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
.buckjavaargs limiting BUCK's memory for CI 2016-02-01 10:49:33 -08:00
.editorconfig editorconfig: Set indent_size for BUCK files to 4 (#21554) 2018-10-08 23:17:38 -07:00
.eslintignore Split out docs to their own repo 2017-12-05 13:02:54 -08:00
.eslintrc Add no-dupe-class-members to RN ESLint fonfig 2018-10-26 12:28:49 -07:00
.flowconfig merge master 2019-03-23 16:38:05 -07:00
.flowconfig.android Fix the builds... (#20) 2019-03-25 15:17:54 -07:00
.gitattributes Added a .gitattributes file, ensuring that Bash script source files (gradlew and 2015-10-13 23:10:39 -04:00
.github.flowconfig.android Add test to sync RN github flow configs 2018-08-13 21:38:58 +01:00
.gitignore merge master 2019-03-23 16:38:05 -07:00
.npmignore Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
.nvmrc Add .nvmrc + fix node version for eslint 5 compat (#20109) 2018-07-31 02:34:16 -07:00
Brewfile Tomun/yaml (#4) 2019-03-04 13:27:54 -08:00
CHANGELOG.json sync from internal (#6) 2019-03-07 14:57:20 -08:00
CHANGELOG.md sync from internal (#6) 2019-03-07 14:57:20 -08:00
CMakeLists.txt sync from internal (#5) 2019-03-05 21:47:37 -08:00
CODE_OF_CONDUCT.md Update repo documentation to match other Facebook projects 2018-09-10 18:02:26 -07:00
CONTRIBUTING.md Update repo documentation to match other Facebook projects 2018-09-10 18:02:26 -07:00
DockerTests.md Fix npm commands in DockerTests.md (#21758) 2018-10-12 14:43:40 -07:00
Jenkinsfile Container Testing Updates 2017-04-12 16:31:35 -07:00
LICENSE Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
LICENSE-docs More licenses 2015-03-24 19:59:10 -07:00
README.md Fix the builds... (#20) 2019-03-25 15:17:54 -07:00
React.podspec Fix broken jsiexecutor search path. (#23274) 2019-02-18 14:44:30 +01:00
Releases.md Re-trigger Android build 2019-01-16 20:31:06 +01:00
build.gradle facebook 0.58.6 merge with conflicts (although some iOS files had conflicts removed) 2019-03-11 13:49:58 -07:00
cli.js Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
dirs Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
gradlew fix gradle wrapper issue (#19976) 2018-08-13 21:38:57 +01:00
gradlew.bat Add missing copyright headers (#21000) 2018-09-07 13:17:38 -07:00
jest-preset.json Initial commit of internal changes. 2019-03-01 10:09:07 -08:00
package.json Applying package update to 0.58.6-microsoft.6 2019-03-25 22:21:42 +00:00
react.gradle Copy bundled resources and js in Android App Bundle builds (#21738) 2019-01-16 16:38:34 +01:00
rn-cli.config.js facebook 0.58.6 merge with conflicts (although some iOS files had conflicts removed) 2019-03-11 13:49:58 -07:00
rn-get-polyfills.js Remove global babelHelpers and regenerator (#21283) 2018-09-26 10:03:05 -07:00
runXcodeTests.sh Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
settings.gradle Bunch of build fixes in ReactAndroid and ReactCommon 2019-03-12 15:48:05 +05:30
setupBabel.js Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
yarn.lock Fix the builds... (#20) 2019-03-25 15:17:54 -07:00

README.md

Working fork for Microsoft internal usage

It is not our goal to have a long term fork of facebook/react-native/

The reasons for this fork to exist currently are 3 fold.

  1. Provide a staging ground for changes that Microsoft is submitting back to the main Facebook repo, such that our internal apps can share and validate these changes while the PRs go through the standard merge process with Facebook.
  2. A holding ground for our implementation of react-native for macOS. -- The eventual plan is to refactor a bunch of code within facebook/react-native to allow the macOS code to be implemented as an out of tree platform that works with the core react-native package. But currently the implementation shares so much logic with the iOS platform that it would involve a lot of code duplication to move it out. This process will take a while to work through but is the eventual goal.
  3. Hold various changes that we have made internally to support our apps, which we hope to revert as we update our internal code. But we are putting it all out here since other projects require this changes exist for now.

The eventual goal is for this fork to stop existing, or certainly have a much smaller delta between this fork and facebook/react-native.

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.