This app was built to demonstrate my skills related with the mobile take home assignment.
- Expo
- TypeScript
- Axios
- Firebase
- Tamagui
- Google fonts
- FlashList
- Expo image picker
- Expo location
- React Hook Form + Yup
- Zustand
- Install NVM or Node.js LTS release - v18
- Git
- Yarn
- Watchman
- Expo CLI
- Android Studio - recommended version Giraffe
- Graddle version
- XCode - recommended version 15.1
If you are new to React Native, this is a helpful introduction: https://reactnative.dev/docs/getting-started
-
Create a
.env
file with the propertyEXPO_PUBLIC_GOOGLE_API_KEY=
and the respective value of Google API Key -
Clone the project and access the project folder
-
Install the dependencies by running:
yarn cd ios && npx pod-install && cd ..
-
Set the environment variable value within android and ios files by running:
npx expo prebuild
-
Install the build within each device emulator
yarn android yarn ios
├── assets # Assets folder for app icon and splashscreen
├── src
│ ├── @types # Types declarations to images .png.d.ts or .svg.d.ts
│ ├── assets # Assets folder for icons, illustrations
│ ├── components # Components reutilized
│ ├── firebase # Has subfolders regarding with functionality like, auth, firestore and storage
│ ├── helpers # Methods to help specific screens
│ ├── routes # Navigation configuration
│ ├── screens # Screens (can have or not a folder with specific components)
│ ├── services # API methods
│ ├── stores # Zustand stores
│ ├── theme # Files to configure Tamagui tokens and fonts
│ ├── utils # Utils methods
│
│ tamagui.config.ts # Set up of tamagui
Origin home assignment figma project.