From b95509213e71c68cdce0ac8ea04c955fb94f274d Mon Sep 17 00:00:00 2001 From: Daniel Schmidt Date: Tue, 16 May 2017 01:55:10 +0200 Subject: [PATCH] Add NavigationPlayground Expo Demo (#1523) * use react-navigation as dependency * add expo based playground app * name expo playground demo in the docs * add ci task to deploy playground demo --- packages/react-navigation/README.md | 2 +- packages/react-navigation/circle.yml | 5 ++++ .../docs/api/navigators/DrawerNavigator.md | 2 +- .../docs/api/navigators/StackNavigator.md | 2 ++ .../docs/api/navigators/TabNavigator.md | 2 +- .../ExpoNavigationPlayground/.babelrc | 8 ++++++ .../ExpoNavigationPlayground/.gitignore | 3 +++ .../ExpoNavigationPlayground/.watchmanconfig | 1 + .../assets/icons/react-navigation.png | Bin 0 -> 13260 bytes .../ExpoNavigationPlayground/exp.json | 24 ++++++++++++++++++ .../examples/ExpoNavigationPlayground/main.js | 4 +++ .../ExpoNavigationPlayground/package.json | 14 ++++++++++ .../examples/NavigationPlayground/README.md | 2 ++ .../NavigationPlayground/package.json | 4 +-- .../react-navigation/website/src/AppFrame.js | 7 +++++ 15 files changed, 75 insertions(+), 5 deletions(-) create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/.babelrc create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/.gitignore create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/.watchmanconfig create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/assets/icons/react-navigation.png create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/exp.json create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/main.js create mode 100644 packages/react-navigation/examples/ExpoNavigationPlayground/package.json diff --git a/packages/react-navigation/README.md b/packages/react-navigation/README.md index ff015b37..d6392aa8 100644 --- a/packages/react-navigation/README.md +++ b/packages/react-navigation/README.md @@ -3,7 +3,7 @@ *Learn once, navigate anywhere.* -Browse the docs on [reactnavigation.org](https://reactnavigation.org/). +Browse the docs on [reactnavigation.org](https://reactnavigation.org/) or try it out on [our expo demo](https://exp.host/@react-navigation/NavigationPlayground). ## Motivation diff --git a/packages/react-navigation/circle.yml b/packages/react-navigation/circle.yml index 76182379..618f58c4 100644 --- a/packages/react-navigation/circle.yml +++ b/packages/react-navigation/circle.yml @@ -21,7 +21,12 @@ jobs: - deploy: command: | if [ "${CIRCLE_BRANCH}" == "master" ]; then + # deploy website cd website && yarn && cd ../ yarn run build-docs ./scripts/deploy-website.sh + + # deploy expo playground demo + yarn global add exp && exp login -u "$EXPO_USERNAME" -p "$EXPO_PASSWORD" + cd examples/ExpoNavigationPlayground && npm install && exp publish fi diff --git a/packages/react-navigation/docs/api/navigators/DrawerNavigator.md b/packages/react-navigation/docs/api/navigators/DrawerNavigator.md index b419eeec..d25c7867 100644 --- a/packages/react-navigation/docs/api/navigators/DrawerNavigator.md +++ b/packages/react-navigation/docs/api/navigators/DrawerNavigator.md @@ -1,6 +1,6 @@ # DrawerNavigator -Used to easily set up a screen with a drawer navigation. +Used to easily set up a screen with a drawer navigation. For a live example please see [our expo demo](https://exp.host/@react-navigation/NavigationPlayground). ```js class MyHomeScreen extends React.Component { diff --git a/packages/react-navigation/docs/api/navigators/StackNavigator.md b/packages/react-navigation/docs/api/navigators/StackNavigator.md index f09ac168..1f8852ec 100644 --- a/packages/react-navigation/docs/api/navigators/StackNavigator.md +++ b/packages/react-navigation/docs/api/navigators/StackNavigator.md @@ -164,3 +164,5 @@ The navigator component created by `StackNavigator(...)` takes the following pro ### Examples See the examples [SimpleStack.js](https://github.com/react-community/react-navigation/tree/master/examples/NavigationPlayground/js/SimpleStack.js) and [ModalStack.js](https://github.com/react-community/react-navigation/tree/master/examples/NavigationPlayground/js/ModalStack.js) which you can run locally as part of the [NavigationPlayground](https://github.com/react-community/react-navigation/tree/master/examples/NavigationPlayground) app. + +You can view these examples directly on your phone by visiting [our expo demo](https://exp.host/@react-navigation/NavigationPlayground). diff --git a/packages/react-navigation/docs/api/navigators/TabNavigator.md b/packages/react-navigation/docs/api/navigators/TabNavigator.md index bdde081d..d48c960e 100644 --- a/packages/react-navigation/docs/api/navigators/TabNavigator.md +++ b/packages/react-navigation/docs/api/navigators/TabNavigator.md @@ -1,6 +1,6 @@ # TabNavigator -Used to easily set up a screen with several tabs with a TabRouter. +Used to easily set up a screen with several tabs with a TabRouter. For a live example please see [our expo demo](https://exp.host/@react-navigation/NavigationPlayground). ```js class MyHomeScreen extends React.Component { diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/.babelrc b/packages/react-navigation/examples/ExpoNavigationPlayground/.babelrc new file mode 100644 index 00000000..2bcd546d --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/.babelrc @@ -0,0 +1,8 @@ +{ + "presets": ["babel-preset-expo"], + "env": { + "development": { + "plugins": ["transform-react-jsx-source"] + } + } +} diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/.gitignore b/packages/react-navigation/examples/ExpoNavigationPlayground/.gitignore new file mode 100644 index 00000000..9f9e17e0 --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/.gitignore @@ -0,0 +1,3 @@ +node_modules/**/* +.expo/* +npm-debug.* diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/.watchmanconfig b/packages/react-navigation/examples/ExpoNavigationPlayground/.watchmanconfig new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/.watchmanconfig @@ -0,0 +1 @@ +{} diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/assets/icons/react-navigation.png b/packages/react-navigation/examples/ExpoNavigationPlayground/assets/icons/react-navigation.png new file mode 100644 index 0000000000000000000000000000000000000000..9f56a23138b57146772b5568e5b952b6452c5687 GIT binary patch literal 13260 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 literal 0 HcmV?d00001 diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/exp.json b/packages/react-navigation/examples/ExpoNavigationPlayground/exp.json new file mode 100644 index 00000000..d6c76fd6 --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/exp.json @@ -0,0 +1,24 @@ +{ + "name": "NavigationPlayground", + "description": "Try out react-navigation now with this awesome playground", + "slug": "NavigationPlayground", + "privacy": "public", + "sdkVersion": "16.0.0", + "version": "1.0.0", + "orientation": "portrait", + "primaryColor": "#cccccc", + "icon": "./assets/icons/react-navigation.png", + "loading": { + "icon": "./assets/icons/react-navigation.png", + "hideExponentText": false + }, + "packagerOpts": { + "assetExts": [ + "ttf", + "mp4" + ] + }, + "ios": { + "supportsTablet": true + } +} diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/main.js b/packages/react-navigation/examples/ExpoNavigationPlayground/main.js new file mode 100644 index 00000000..4739b277 --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/main.js @@ -0,0 +1,4 @@ +import Expo from 'expo'; +import App from 'NavigationPlayground/js/App'; + +Expo.registerRootComponent(App); diff --git a/packages/react-navigation/examples/ExpoNavigationPlayground/package.json b/packages/react-navigation/examples/ExpoNavigationPlayground/package.json new file mode 100644 index 00000000..e1813dbb --- /dev/null +++ b/packages/react-navigation/examples/ExpoNavigationPlayground/package.json @@ -0,0 +1,14 @@ +{ + "name": "ExpoNavigationPlayground", + "version": "0.0.0", + "description": "Hello Expo!", + "author": null, + "private": true, + "main": "main.js", + "dependencies": { + "expo": "16.0.0", + "react": "16.0.0-alpha.6", + "react-native": "https://github.com/expo/react-native/archive/sdk-16.0.0.tar.gz", + "NavigationPlayground": "file:../NavigationPlayground" + } +} diff --git a/packages/react-navigation/examples/NavigationPlayground/README.md b/packages/react-navigation/examples/NavigationPlayground/README.md index 0627570c..584fc08c 100644 --- a/packages/react-navigation/examples/NavigationPlayground/README.md +++ b/packages/react-navigation/examples/NavigationPlayground/README.md @@ -5,3 +5,5 @@ A playground for experimenting with react-navigation in a pure-JS React Native a ## Usage Please see the [Contributors Guide](https://github.com/react-community/react-navigation/blob/master/docs/guides/Contributors.md#development) for instructions on running these example apps. + +You can view this example application directly on your phone by visiting [our expo demo](https://exp.host/@react-navigation/NavigationPlayground). diff --git a/packages/react-navigation/examples/NavigationPlayground/package.json b/packages/react-navigation/examples/NavigationPlayground/package.json index c9d56cea..a1e7f0c6 100644 --- a/packages/react-navigation/examples/NavigationPlayground/package.json +++ b/packages/react-navigation/examples/NavigationPlayground/package.json @@ -8,12 +8,12 @@ "dependencies": { "react": "16.0.0-alpha.6", "react-native": "^0.44.0", - "react-native-vector-icons": "^4.1.1" + "react-native-vector-icons": "^4.1.1", + "react-navigation": "file:../.." }, "devDependencies": { "babel-jest": "^20.0.1", "jest": "^20.0.1", - "react-navigation": "file:../..", "react-test-renderer": "^15.5.4" }, "jest": { diff --git a/packages/react-navigation/website/src/AppFrame.js b/packages/react-navigation/website/src/AppFrame.js index e976ac78..f3491ef0 100644 --- a/packages/react-navigation/website/src/AppFrame.js +++ b/packages/react-navigation/website/src/AppFrame.js @@ -21,6 +21,13 @@ const NavigationLinks = ({ navigation, className, reverse }) => { ); }), + + Demo + , + GitHub ,