The expo
template generated with dooboo-cli
.
We believe that the fastest way to build the app is using Expo. You can create app even more easily with the cli tool dooboo-cli.
- react-native
- expo-router
- emotion
- dooboo-ui
- jest
- react-native-testing-library
- typescript
- ts-jest
- prettier
- react-native-web
- expo-localization
- In default, dooboo-ui ui framework is preinstalled in the project. Hope you like it š§”.
In simpler terms, starting from version 48 of the Expo, there's an issue with the package called expo-auth-session when used in an app that is managed by Expo (for details, see this issue link). To avoid this problem, it's a good idea to use expo-dev-client.
To elaborate further, Expo offers a feature where you can create a special kind of build for development purposes. This is helpful because it allows you to use additional pieces of code (modules) written for React Native, which usually wouldn't work in an Expo-managed app without going through some complex steps or taking on the responsibility of handling the native code yourself. The expo-dev-client helps to get around these issues, making it easier for you to work with external React Native modules in a more straightforward way.
You can create the dev client by running the script
eas:dev:ios
// or
npx eas build --profile development --platform ios
For android,
eas:dev:android
// or
eas build --profile development --platform android
In case your build process fails due to the presence of google-services.json
and GoogleService-Info.plist
files in the .gitignore
file, you can try a temporary fix. Simply remove these files from .gitignore
and re-run the build commands. Once the build succeeds, make sure to add them back to .gitignore
. This is important because these files shouldn't be part of the version control.
After the development build is finished, head to Expo's website to download it. If you are working on an iOS app, you can find guidance on how to install your build on simulators through this link. For Android, check out this link which provides steps for creating APKs for emulators and devices.
In order to use this project, please follow the configuration guide below
- Create .env file
cp .env.sample .env
- Create a new firebase project and add following values
- apiKey
- authDomain
- projectId
- storageBucket
- messagingSenderId
- appId
- measurementId
you can find these options in
firebase -> [your project name] -> web app -> project setting
- Add Google Client id
- web
- ios
- android
- Add Facebook app id (developer.facebook.com/apps/)