/reactar

Primary LanguageJavaScriptMIT LicenseMIT

ReactAR

ReactAR offers information about planets, moons and dwarfplanets of our solar system. In addition it offers the option to look at some celestial bodies in augmented reality. The information are fetched from Wikipedia and contain a short description and the first paragraph from Wikipedia for the chosen celestial object.

A further feature is called APOD and offers the latest Astronomy Picture of the Day from NASA. Furthermore the last five apods are accessible in an image gallery.

The following celestial objects contain an AR-View option:

  • All planets
  • Moon (Earth's moon)
  • Neptune (Dwarfplanet)

The project has been realised as part of the course 'Mobile Computing' by lecturer Michael Schellenbach.

Module Requirements

The following guidelines & demands had to be fullfilled to pass the course 'Mobile Computing':

  • Total effort: 50-60 hours
  • Framework: React Native
  • Additional Feature: Augmented Reality, Machine Learning or GPS etc.
  • Additional Requirements: Usage of a database (MongoDB) and a webservice (NodeJS) to supply data to the application (or ReST API)
  • Releasing the project at gitlab / github
  • Documentation of the project in gitlab / github

Screenshots

Capture 1 Capture 2 Capture 7 Capture 5 Capture 4 Capture 6

Getting Started

Make sure you have a package manager like Yarn or npm installed and at least XCode 9 installed. The following stepts are tested with Yarn on Mac OS Mojave 10.14.4 with XCode Version 10.2.1. Consider switching to Yarn if npm causes problems.

Prerequisites

Apple's iOS ARKit is only supported by Apple devices with A9 or later processors on iOS 11. Make sure you have at least an iPhone SE or 6s to run the application on your hardware. Android devices are not supported due to not implemented AR-bindings.

To preview the Augmented Reality, it's neccessary to run/build the application on the device by using XCode 9 or later. It's not possible to use the ARKit within the iOS Simulator.

Installing

Open your terminal and navigate to a preferred folder where you want to store the ReactAR project (for example: ~/Documents)

Clone this repo:

git clone https://gitlab.hs-ruhrwest.de/ucseneum/reactar.git

Change to reactar dir:

cd reactar

Install neccessary packages with yarn:

yarn install

Setting up the (NASA) API Key

You need an own api key: NASA Open APIs. Go to NASA Open APIs and register yourself for an api key. Enter your api key in './env/api_key.js' on line 1. Save and Close 'api_key.js'.

Deployment

Usage iOS Simulator

If you want to use the iOS Simulator and pass on the augmented reality view, navigate to the 'reactar' project folder in your terminal and type:

react-native run-ios

Building and starting the iOS Simulator might take some time. Keep in mind that you can't use the AR capability within the iOS Simulator.

Usage Mobile Device

If you want to use the application on your device make sure your device is connected to your Mac.

  • Open reactar in XCode (/reactar/ios/ReactAR.xcodeproj)
  • Change Signature and Bundle Identifier: Replace every digit in the Bundle Identifier with an own, random number, for more details, take a look at the following screenshot
  • Build & Run Application on your device
  • Building might take some time
  • You might need to trust the app on your device. Follow the instructions shown in XCode or on your device

XCode Signing

Built With

Authors

  • Sebastian Neumann - Initial work

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Michael Schellenbach
  • Jeanette Stürz