feat: whyrating - initial project from turbostarter boilerplate
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
---
|
||||
title: Installation
|
||||
description: Find answers to common mobile installation issues.
|
||||
url: /docs/mobile/troubleshooting/installation
|
||||
---
|
||||
|
||||
# Installation
|
||||
|
||||
## Cannot clone the repository
|
||||
|
||||
Issues related to cloning the repository are usually related to a Git misconfiguration in your local machine. The commands displayed in this guide using SSH: these will work only if you have setup your SSH keys in Github.
|
||||
|
||||
If you run into issues, [please make sure you follow this guide to set up your SSH key in Github.](https://docs.github.com/en/authentication/connecting-to-github-with-ssh)
|
||||
|
||||
If this also fails, please use HTTPS instead. You will be able to see the commands in the repository's Github page under the "Clone" dropdown.
|
||||
|
||||
Please also make sure that the account that accepted the invite to TurboStarter, and the locally connected account are the same.
|
||||
|
||||
## Local database doesn't start
|
||||
|
||||
If you cannot run the local database container, it's likely you have not started [Docker](https://docs.docker.com/get-docker/) locally. Our local database requires Docker to be installed and running.
|
||||
|
||||
Please make sure you have installed Docker (or compatible software such as [Colima](https://github.com/abiosoft/colima), [Orbstack](https://github.com/orbstack/orbstack)) and that is running on your local machine.
|
||||
|
||||
Also, make sure that you have enough [memory and CPU allocated](https://docs.docker.com/engine/containers/resource_constraints/) to your Docker instance.
|
||||
|
||||
## I don't see my translations
|
||||
|
||||
If you don't see your translations appearing in the application, there are a few common causes:
|
||||
|
||||
1. Check that your translation `.json` files are properly formatted and located in the correct directory
|
||||
2. Verify that the language codes in your configuration match your translation files
|
||||
3. Enable debug mode (`debug: true`) in your i18next configuration to see detailed logs
|
||||
|
||||
[Read more about configuration for translations](/docs/mobile/internationalization#configuration)
|
||||
|
||||
## Expo cannot detect XCode
|
||||
|
||||
If you get the following error:
|
||||
|
||||
```bash
|
||||
Expo cannot detect Xcode Xcode must be fully installed before you can continue
|
||||
```
|
||||
|
||||
This is usually related to the Xcode CLI not being installed. You can fix this by running the following command:
|
||||
|
||||
```bash
|
||||
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
|
||||
```
|
||||
|
||||
If you still face the issue, please make sure you have the latest version of Xcode installed.
|
||||
|
||||
## "Module not found" error
|
||||
|
||||
This issue is mostly related to either dependency installed in the wrong package or issues with the file system.
|
||||
|
||||
The most common cause is incorrect dependency installation. Here's how to fix it:
|
||||
|
||||
1. Clean the workspace:
|
||||
|
||||
```bash
|
||||
pnpm clean
|
||||
```
|
||||
|
||||
2. Reinstall the dependencies:
|
||||
```bash
|
||||
pnpm i
|
||||
```
|
||||
|
||||
If you're adding new dependencies, make sure to install them in the correct package:
|
||||
|
||||
```bash
|
||||
# For main app dependencies
|
||||
pnpm install --filter mobile my-package
|
||||
|
||||
# For a specific package
|
||||
pnpm install --filter @turbostarter/ui my-package
|
||||
```
|
||||
|
||||
If the issue persists, please check the file system for any issues.
|
||||
|
||||
### Windows OneDrive
|
||||
|
||||
OneDrive can cause file system issues with Node.js projects due to its file syncing behavior. If you're using Windows with OneDrive, you have two options to resolve this:
|
||||
|
||||
1. Move your project to a location outside of OneDrive-synced folders (recommended)
|
||||
2. Disable OneDrive sync specifically for your development folder
|
||||
|
||||
This prevents file watching and symlink issues that can occur when OneDrive tries to sync Node.js project files.
|
||||
@@ -0,0 +1,75 @@
|
||||
---
|
||||
title: Publishing
|
||||
description: Find answers to common mobile publishing issues.
|
||||
url: /docs/mobile/troubleshooting/publishing
|
||||
---
|
||||
|
||||
# Publishing
|
||||
|
||||
## My app submission was rejected
|
||||
|
||||
If your app submission was rejected, you probably got an email with the reason. You'll need to fix the issues and upload a new build of your app to the store and send it for review again.
|
||||
|
||||
Make sure to follow the [guidelines](/docs/mobile/marketing) when submitting your app to ensure that everything is setup correctly.
|
||||
|
||||
## App Store screenshots don't match requirements
|
||||
|
||||
If your app submission was rejected due to screenshot issues, make sure:
|
||||
|
||||
1. Screenshots match the required dimensions for each device
|
||||
2. Screenshots accurately represent your app's functionality
|
||||
3. You have provided screenshots for all required device sizes
|
||||
4. Screenshots don't contain device frames unless they match Apple's requirements
|
||||
|
||||
[See Apple's screenshot specifications](https://developer.apple.com/help/app-store-connect/reference/screenshot-specifications/)
|
||||
|
||||
## Version number conflicts
|
||||
|
||||
If you get version number conflicts when submitting:
|
||||
|
||||
1. Ensure your `app.json` version matches what's in the store
|
||||
2. Increment the version number appropriately:
|
||||
```bash
|
||||
"version": "1.0.1",
|
||||
"android.versionCode": 2,
|
||||
"ios.buildNumber": "2"
|
||||
```
|
||||
3. Make sure both stores have unique version numbers
|
||||
|
||||
## Missing or incorrect environment variables
|
||||
|
||||
If your build succeeds but the binary is misconfigured (e.g., API URL shows as `undefined`, Sentry auth fails, or `app.config.*` settings don’t apply), verify your EAS environment variables:
|
||||
|
||||
1. Define variables on EAS and assign them to the correct environment (`development`, `preview`, `production`).
|
||||
2. For values used in app code, prefix with `EXPO_PUBLIC_` and read via `process.env.EXPO_PUBLIC_...`.
|
||||
3. For config-time values (bundle identifiers, file paths), read `process.env.VARNAME` from your `app.config.*`.
|
||||
4. Explicitly set `environment` in `eas.json` build profiles, or pass `--environment` to `eas update` so updates use the same variables as builds.
|
||||
5. For local development, pull variables into a `.env` file:
|
||||
```bash
|
||||
eas env:pull --environment development
|
||||
```
|
||||
6. Use secret file variables (e.g., `GOOGLE_SERVICES_JSON`) and reference them in `app.config.*`.
|
||||
7. Keep `.env` out of git; cloud builds don’t rely on your local `.env`.
|
||||
|
||||
See: [Environment variables in EAS](https://docs.expo.dev/eas/environment-variables/).
|
||||
|
||||
## My app crashes on production build
|
||||
|
||||
If the app works in development but crashes in a production build, check these common causes:
|
||||
|
||||
1. **Missing or incorrect environment variables at build time**. EAS cloud jobs don’t use your local `.env` by default. Ensure variables exist on EAS, are assigned to the correct environment, and use `EXPO_PUBLIC_` for values read in app code. See: [Environment variables in EAS](https://docs.expo.dev/eas/environment-variables/).
|
||||
2. **Missing native config files**. Provide `google-services.json` / `GoogleService-Info.plist` via secret file variables (e.g., `GOOGLE_SERVICES_JSON`) and reference them in `app.config.*`.
|
||||
3. **Production-only code paths**. Guard dev-only code with `__DEV__`, avoid importing dev tools in production, and ensure feature flags don’t access undefined values.
|
||||
4. **Misconfigured native modules or plugins**. Verify required plugins/babel config are present and rebuild after cache clears.
|
||||
|
||||
Try this:
|
||||
|
||||
1. Run the app with a production JS bundle locally to surface minification issues:
|
||||
```bash
|
||||
npx expo start --no-dev --minify
|
||||
```
|
||||
2. Inspect device logs when the crash occurs (Android: `adb logcat`, iOS: Console.app or Xcode Devices).
|
||||
3. Rebuild with a clean cache if needed:
|
||||
```bash
|
||||
eas build --clear-cache
|
||||
```
|
||||
Reference in New Issue
Block a user