بدون توضیح

aidan 8e30fe867f remove alert when editing a grouped landmark 1 سال پیش
.expo-shared 2c36d63256 Created a new Expo app 3 سال پیش
.vscode c6d2ff49f1 tried to fix indoor landmark bugs 1 سال پیش
__tests__ 6d6712a4bf completing merge 2 سال پیش
android c64cfe8a96 start rewriting how grouped landmarks are created 1 سال پیش
assets 829de085ae add ability to group nearby landmarks 1 سال پیش
coverage 6d6712a4bf completing merge 2 سال پیش
design 5e63c689ad updated docs 3 سال پیش
docs 5e63c689ad updated docs 3 سال پیش
ios adc5a7fffc changed grouped landmarks, can add to an existing landmark to create a group instead of creating an empty group 1 سال پیش
oss-attribution a044083dfe added a feed screen 3 سال پیش
src 8e30fe867f remove alert when editing a grouped landmark 1 سال پیش
test 6d6712a4bf completing merge 2 سال پیش
.env aa959439a2 fix by updating Android sdk levels and using eas build 2 سال پیش
.gitignore dfb44f13a3 fixes and working on ios 2 سال پیش
App.tsx 6c5ddb6009 fixed rating landmark issue 2 سال پیش
GoogleService-Info.plist 7cac62bdc2 trying to fix google play signing issue 2 سال پیش
app.json 8392f26dcc finished being able to access your landmarks from the profile page 1 سال پیش
babel.config.json 100ecc7e74 fixed asset issues on ios 2 سال پیش
declarations.d.ts ca7b714413 integrated erics changed 2 سال پیش
docker-compose.yml fe6473aa91 finished landmark photos 2 سال پیش
eas.json adc5a7fffc changed grouped landmarks, can add to an existing landmark to create a group instead of creating an empty group 1 سال پیش
google-services.json 7cac62bdc2 trying to fix google play signing issue 2 سال پیش
index.js e993a2c3db implemented ota updates 2 سال پیش
jest.config.js 6d6712a4bf completing merge 2 سال پیش
jsdoc.json d8646f095a added docs using jsdoc and better-docs 3 سال پیش
metro.config.js 1fed373c26 fixed metro file for expo 2 سال پیش
package-lock.json 829de085ae add ability to group nearby landmarks 1 سال پیش
package.json 829de085ae add ability to group nearby landmarks 1 سال پیش
privacy.html a044083dfe added a feed screen 3 سال پیش
readme.md dfb44f13a3 fixes and working on ios 2 سال پیش
tsconfig.json ca7b714413 integrated erics changed 2 سال پیش
tsconfig.spec.json 01ef96841b fixed registration form and added uxflow diagram 3 سال پیش
usage.html a044083dfe added a feed screen 3 سال پیش
yarn-error.log bfc9e9c427 enhanced vtt 3 سال پیش
yarn.lock c7cf802fe7 add reporting feature files to new branch 1 سال پیش

readme.md

Click & Push Mobile

Click&Push's mobile app, built with React Native/Typescript. Acts as a client for Click & Push's Rest API.

Downloading and running the app

Reading the React Native CLI Quickstart guide on the official docs is highly recommended, however the process is very straight forward. https://reactnative.dev/docs/environment-setup

Click & Push Mobile uses Expo's Bare workflow, so it leverages Expo's powerful CLI, but also allows for essential native modules to be added (i.e. voice recognition)

General

  1. Clone the repository
  2. Make sure you have execute permissions set on your project folder sudo chmod -R 755 atlas-mobile-ts/
  3. Install node and npm if needed https://nodejs.dev/learn/how-to-install-nodejs
  4. Run npm install -g expo-cli if you don't have the expo-cli installed already.
  5. Run npm install to install dependencies from package.json.

After these steps, you need to perform some additional platform-specific steps (note: the ios and android folders in the repo have important modifications that enable certain dependencies in the app to function properly, so its important to keep them intact when pushing and pulling the repo):

Android

  1. Set up an android device (you'll need to use a physical device in order to use the voice to text capabilities), go here if you need information on how to set up a physical device for development.
  2. Install and configure the a compatible JDK and android SDK (go here and choose React Native CLI Quickstart -> <your OS> -> Android for comprehensive instructions on how to do that).
  3. Check the atlas-mobile-ts/android/build.gradle file to make sure that compileSdkVersion and targetSdkVersion are set to the Android API level that matches your device (i.e. Android 12 = API 31)
  4. Run expo run:android in the app root folder, which will install the app on your device and run it.

iOS

  1. Set up an iOS device (you'll need to use a physical device in order to use the voice to text capabilities), go here if you need information on how to set up a physical device for development.
  2. Install and configure the Xcode and cocoapods (go here and choose React Native CLI Quickstart -> macOS -> iOS for comprehensive instructions on how to do that)
  3. It is recommended run the project using xcode, as it will provide some extra code quality checks.

For technical information about the project structure and explainations of the code, see the wiki.

Troubleshooting

For main.jsbundle error, use the following command react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios'