Welcome to the Social Augmented Reality mobile application, also kown as SoAR! It's powered by Cordova and Crosswalk, with npm and bower as the package managers. Ionic was chosen as the hybrid framework of choice! It's currently only been tested on Android, but it might also work on iOS someday, who knows.
This is the front-end part, the server can be found at https://github.com/learning-layers/sardroid-server
The Vagrant way
If you'd prefer using Vagrant for your development needs, just install Vagrant, then run 'vagrant up' inside the project folder. Currently, it install the required development dependencies specified below, and also the Android SDK for easy deployment and testing. Neato!
The regular way
First thing's first, install a whole bunch of Node stuff
npm install -g bower gulp cordova ionic
Then, clone this repository and run the following commands to install dependancies
npm install && bower install
Afterwards, run gulp to build the www/ folder, which contains the app itself! Pass the flag --env production to it to minify CSS, HTML and such when you're about to release the app!
gulp build --env production
When deploying to actual devices, remember to install the needed cordova plugins, which ionic handily stores in the package.json
ionic state restore
To start livereload server that watches your files diligently and reloads when necessary, run
You can pass in a couple of different arguments to Gulp to inject sensitive API keys and credentials and such, things that are best left out of version control!
ROLLBAR_TOKEN=asd ROLLBAR_ENV=asd TURN_USERNAME=ads TURN_PASSWORD=asd gulp watch
When developing cordova-based applications in the browser instead of the mobile, it's usually a good idea to provide mock functionality for the various device functionalities! This Chrome extension is highly recommended for development.
Add the following lines manually to your AndroidManifest.xml under platforms/android to enable WebRTC
<uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> <uses-permission android:name="android.permission.CAMERA" />
SoAR is developed by the Learning Environments research group at the School of Arts, Design and Architecture of Aalto University, Finland.
Development, design and direction:
- Matti Jokitulppo (@melonmanchan)
- Jukka Purma (@jpurma)
- Leo Nikkilä (@lnikkila)
- Marjo Virnes
- Lassi Veikkonen (@lassiveikkonen)
- Samuli Raivio (@bqqbarbhg)
- Sanna Reponen
- Jana Pejoska