这是什么?
这是 Facebook 2017 年开发者大会 F8 官方应用的完整源代码,该应用曾同时发布在 Google Play 和 App Store 上。
这是完整的应用,还是只是一个库?
这是一个完整的、可直接发布的移动应用。客户端使用 React Native 构建,后端基于 Parse,并使用 Redux、Relay 和 GraphQL 处理数据。
我该如何在本地运行这个应用?
先用 `docker-compose up` 启动后端,然后通过 `babel-node ./scripts/open-ios-project.js` 脚本启动 iOS 版本,或用 `./scripts/run-android-app.sh` 运行 Android 版本。
试用之前需要安装什么?
需要配置 React Native 开发环境(iOS 需要 Xcode,Android 需要 Android SDK),并需要 Docker Compose 来运行服务器,因为该应用依赖 react-native-fbsdk、Parse 以及其他原生模块。
这个项目还在维护吗?
不再维护。该仓库已归档,作为 2017 年应用的历史快照保留,不会再针对更新的 React Native 或 SDK 版本提供更新。
同时支持 iOS 和 Android 吗?
支持。官方应用同时发布在两个平台上,仓库中也分别包含两个平台的运行脚本。
这个应用的技术栈是什么?
界面使用 React Native,状态管理使用 Redux,数据获取使用 Relay 加 GraphQL,后端由 Parse 服务器支撑。
在哪里可以了解它是如何构建的?
Facebook 发布了一套配套教程,讲解团队如何结合 React Native、Redux、Relay 和 GraphQL 来构建这个应用。
我可以自己重新生成 GraphQL 模式吗?
可以。仓库中包含一个脚本(`generate-graphql-schema.js`),可以通过 babel-node 运行,用来重新生成 GraphQL 模式。
What are similar projects?
gsy_github_app_flutter, ndk-samples, architecture-samples, Material-Animations, React-Native-Apps, sunflower, samples, expo
Which topics is it in?
sample-app, relay, facebook, archive, redux, examples, graphql, react-native, android-app, mobile-app, deprecated, mobile