
expo-essentials是一个建立在Expo之上的Kickass模板,其中包含可管理的文件夹结构,测试套件和基本功能,可在下一个应用程序上启动并运行。




(...还有更多即将到来!)
$ cd client
$ npm start
$ docker-compose up --build
| 命令 | 描述 |
|---|---|
npm start | 启动Expo Metro服务器 |
npm run android | 在Android模拟器中启动该应用程序 |
npm run ios | 在iOS模拟器中启动应用程序 |
npm run web | 在Web浏览器中启动应用程序 |
npm run test | 主动开发测试,观察文件以进行更改并重新运行所有测试 |
npm run testDebug | 调试,Console.Logs,仅重新运行已更改的文件 |
npm run testFinal | 在CLI中显示代码覆盖范围,并更新代码覆盖范围HTML |
npm run updateSnapshots | 当更新屏幕/组件时,测试快照将引发错误,这会更新它们 |
npm run eject | 将EXPO应用程序弹出到本地Android和iOS项目(请注意:此操作是不可逆的) |
| 命令 | 描述 |
|---|---|
npm run start:dev | 使用开发配置启动服务器,在文件更改上重新启动服务器 |
npm run start:staging | 使用登台配置启动服务器 |
npm run start:prod | 使用生产配置启动服务器 |
npm run test:watch | 积极开发测试,观察文件进行更改和重新运行测试 |
npm run test | 在CLI中显示代码覆盖范围,并更新代码覆盖范围HTML |
该模板使用UI小猫来控制主题。要了解有关它的更多信息,请务必访问他们的文档。
client/app/config/colors.js中.ttf或.otf是首选)存储在client/app/assets/fonts文件夹中。 (默认情况下,此模板使用jost字体)。client/App.js中的字体名称和路径:
您可以通过分别更新client/app/config/lightTheme.js和client/app/config/darkTheme.js中的值来指定用于光模式和暗模式的不同颜色。
(此方法使用React钩子,因此请确保您与功能性React组件一起使用)

该模板支持基于应用的不同环境构建的无缝更改配置(例如开发,分期和生产)
移动应用程序的设置设置在client/app/config/settings.js中。
开发配置应直接在dev对象中设置。

分期配置应在staging对象中设置。您可以直接设置它们,也可以通过client/.env点文件添加它们(如果您有敏感数据)。

生产配置应在prod对象中设置,最好通过client/.env文件添加。


服务器的设置是在server/config/settings.js中设置的。 ExpressJS服务器在Docker容器中运行,因此您可以指定将哪些环境文件插入容器中。

例如,可以将开发环境配置设置为:
server/.env.dev文件: 
docker-compose.yml文件中使用此环境文件指定: 
该模板使用Firebase进行用户身份验证和管理。 Firebase提供了丰富的外部提供商列表,您以后要在应用中添加这些提供商。他们还处理发送电子邮件以进行电子邮件验证,密码重置和电子邮件更改。
建议您为应用程序创建3个独立的壁炉项目: app-dev , app-staging和app-prod (用于应用程序使用的每个环境)。这是为了确保您可以独立于彼此的环境测试,并防止重叠数据。
在您的firebase项目中创建WebApp配置,并将它们添加到适当的环境对象中。 
服务器使用Firebase Admin SDK创建身份验证中间件。该中间件通过API请求来解码JWT令牌从应用发送,以识别用户及其角色。
server/config/firebase-service-account-<environment>.jsonserver/config/firebase-service-account-dev.json server/config/firebase-service-account-staging.json , server/config/firebase-service-account-prod.json )


















