No Description

cdmoss ac665f9aca addressed case for voice nearby command when there are no landmarks 2 years ago
.expo-shared 2c36d63256 Created a new Expo app 3 years ago
android ac665f9aca addressed case for voice nearby command when there are no landmarks 2 years ago
assets 7cac62bdc2 trying to fix google play signing issue 2 years ago
coverage 01ef96841b fixed registration form and added uxflow diagram 3 years ago
design 5e63c689ad updated docs 3 years ago
docs 5e63c689ad updated docs 3 years ago
ios 112771eb38 test update 2 years ago
oss-attribution a044083dfe added a feed screen 2 years ago
src d6fa8e95d0 fixed globals import issue 2 years ago
.gitignore f55ae23825 added updated .gitignore 3 years ago
App.js 3d265dd8d2 final commit for first internal testing build 3 years ago
App.tsx 100ecc7e74 fixed asset issues on ios 2 years ago
GoogleService-Info.plist 7cac62bdc2 trying to fix google play signing issue 2 years ago
app.json 9cb2ea45e2 support for notifs 2 years ago
babel.config.json 100ecc7e74 fixed asset issues on ios 2 years ago
docker-compose.yml fe6473aa91 finished landmark photos 2 years ago
env 79081e7b51 further information editing functionality 2 years ago
google-services.json 7cac62bdc2 trying to fix google play signing issue 2 years ago
index.js 4a5415336e added basic vtt 3 years ago
jsdoc.json d8646f095a added docs using jsdoc and better-docs 3 years ago
metro.config.js 100ecc7e74 fixed asset issues on ios 2 years ago
package-lock.json e46afec311 fixed logic with near landmark notifs and started adding comments 2 years ago
package.json e46afec311 fixed logic with near landmark notifs and started adding comments 2 years ago
privacy.html a044083dfe added a feed screen 2 years ago
readme.md e3a01b687d Update 'readme.md' 2 years ago
tsconfig.json d8646f095a added docs using jsdoc and better-docs 3 years ago
tsconfig.spec.json 01ef96841b fixed registration form and added uxflow diagram 3 years ago
usage.html a044083dfe added a feed screen 2 years ago
yarn-error.log bfc9e9c427 enhanced vtt 3 years ago
yarn.lock 40f149623d added more comments 2 years ago

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.