It is mobile app for two major platforms developed using React Native & Expo & Firebase for authentication & Redux Toolkit as an internal decentralized store & MongoDB for the main storage.
- Download Node.js package manager.
- Clone or download project sources (a green icon in the action bar).
- Under the downloaded folder open the window terminal (or another like PowerShell or Git Bash).
- Install all the project dependencies:
npm install
- Create
.env
file in the project root folder with the same structure:
REACT_APP_FIREBASE_API_KEY=YOUR_FIREBASE_KEY
REACT_APP_FIREBASE_APP_ID=YOUR_FIREBASE_APP_ID
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=YOUR_FIREBASE_MESSAGING_SENDER_ID
REACT_APP_GOOGLE_WEBCLIENT_ID=YOUR_GOOGLE_WEBCLIENT_ID
REACT_APP_ANDROID_CLIENT_ID=YOUR_ANDROID_CLIENT_ID
REACT_APP_CAMPING_API_KEY=YOUR_CAMPING_API_KEY
REACT_APP_CAMPING_BASE_URL=https://developer.nps.gov/api/v1/campgrounds
REACT_APP_BACKEND_URL=YOUR_BACKEND_SERVICE_URL
- How to set up authentication variables for google provider? Please follow this video tutorial to fill REACT_APP_GOOGLE_WEBCLIENT_ID and REACT_APP_ANDROID_CLIENT_ID variables
- Additional info to the last variable (connecting the backend service) - look at my Camping API repository or use my testing one
So now all code is prepared, but we need to configure a mobile device
- First of all install the Expo Go application from Google Play (Android) or App Store (IOS).
- Run the development server in the windows terminal:
npm run start
-
Wait until Expo is ready and scan the QR code of the application (when you don't see it - press
C
button or?
to show all the commands): -
Open the QR code scanner (for Android) or Camera for the IOS and follow the link, wait until the bundle ends and see the working app.
- Application for android devices is available or the right panel in this repository below About section
- First install build follow this link
- Install application and run application locally but don't install Expo Go application
- Node.js environment - https://nodejs.org/uk/
- Expo documentation - https://docs.expo.dev/
- Camping location api used in the app - https://www.nps.gov/subjects/developer/api-documentation.htm
- Camping backend documentation - https://camping-api-ggo.onrender.com/api-docs/)
- For an environment variable REACT_APP_BACKEND_URL use that link.
- Google authorization setup - https://www.youtube.com/watch?v=MBMWiTsqnck
'keytool' is not recognized as an internal or external command, operable program or batch file.
Install java on your computer - follow this link
Go to My computer -> right click -> system properties -> environmental variables -> Path -> add you jdk/bin to this path
C:\Program Files\Java\jdk-17.0.2\bin
Save and restart your terminal. Test the command:
keytool --help