Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Readme update #63

Merged
merged 5 commits into from
Aug 2, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
128 changes: 93 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,93 @@
# Project Prisma App

This is a repository for an Ionic app for [Project Prisma](http://www.frederikvincx.com/project-prisma-helping-people-with-dementia). The Ionic app works on both Android and iOS devices.

The app communicates with a [RESTful API](https://github.com/oSoc17/prisma-backend).

## About

Project Prisma is part of [open Summer of Code 2017](http://2017.summerofcode.be/). A student team coached by Frederik Vincx [(@fritsbits)](https://github.com/fritsbits) is working on it now:
- Michiel Leyman [(@MichielLeyman)](https://github.com/MichielLeyman) - backend & project management
- Simon Westerlinck [(@siimonco)](https://github.com/siimonco) - backend
- Jean-Pacifique Mboynincungu [(@oxnoctisxo)](https://github.com/oxnoctisxo) - frontend & system analysis
- Thor Galle ([@th0rgall)](https://github.com/th0rgall) - frontend & user testing

## Installation

Run `npm install` on your command line. Of course, you'll need to have [npm](https://www.npmjs.com/) installed first.

## Running the app

Install Ionic:
```bash
npm install -g ionic
```

Local web server:
```bash
ionic serve
```

Publish to Android:
```bash
ionic cordova platform add android
ionic cordova run android
```
![color your memories](https://user-images.githubusercontent.com/11543641/28823809-acf0b10a-76bf-11e7-918e-ad34338b66c8.jpg)

Prisma is an app that strengthens the relationship between people with memory loss and the people close to them. It does this by providing a living, collaborative digital photo album that can be populated with content of interest to these people.

This repository hosts the frontend of the project: a mobile app based on the [Ionic framework](https://ionicframework.com/). The app communicates with a [RESTful API](https://github.com/Prisma/prisma-backend) to gather and save data.

Be sure to check out our home page [prisma.care](https://prisma.care/) for more information!

## History

Project Prisma was part of [Open Knowledge Belgium](https://www.openknowledge.be/)'s [open Summer of Code 2017](http://2017.summerofcode.be/). A student team coached by Frederik Vincx [(@fritsbits)](https://github.com/fritsbits) worked on it in July 2017:
- Michiel Leyman [(@MichielLeyman)](https://github.com/MichielLeyman) - backend & project management
- Simon Westerlinck [(@siimonco)](https://github.com/siimonco) - backend & database modelling
- Jean-Pacifique Mboynincungu [(@oxnoctisxo)](https://github.com/oxnoctisxo) - frontend system analysis
- Thor Galle [(@th0rgall)](https://github.com/th0rgall) - frontend & product owner

The app was conceived in a one-month collaborative design project in a care home in Zonhoven, Belgium, in January 2017. Together with personel and dementia design researchers the team honed in on a static prototype that was later refined during the Open Summer of Code. More info about it in [this blog post](http://www.frederikvincx.com/project-prisma-helping-people-with-dementia/).

## Installation

We aim to have the app available for download in the Play Store soon. However, if you want to try it out right now, there are several options.

### 1. Prepackaged application

The easiest way is by downloading a binary release package and installing it on your device:

1. Download the latest Android package (.apk) from our [releases page](https://github.com/Prisma/prisma-frontend/releases).
2. In your Android device, look for the setting "Unknown sources" (probably in your security settings), and check/allow it.
3. Transfer the .apk file to your Android device. Now you can install Prisma from there using your file manager of choice.

### 2. Using the development tools

If you have some command line & git experience, this is a more flexible way to get the latest version of the app.

#### Setting up the development environment

1. Clone the repository

```bash
git clone https://github.com/Prisma/prisma-frontend.git
```

2. Install [npm](https://www.npmjs.com/) if you haven't already.

3. On the command line inside the repository, install Cordova & Ionic. Then install the dependencies.

```bash
npm install -g cordova ionic
npm install
```


Now you can run the app in various ways:

#### a) Ionic web server

Ionic comes with a local web server for development purposes that serves the application & recompiles on file changes.

Because cordova.js is not included, phone-specific features will not work. Notably, adding content doesn't work.

```bash
ionic serve
```

#### b) Cordova Browser build

Comparable to the previous method, but here a browser implementation of Cordova is included. Note that this implementation is not fully supported yet.

```bash
ionic cordova platform add browser
ionic cordova run browser # starts a webserver
```

#### c) Android build

In order to build for Android, you'll need to have the [Java JDK](http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html), [Android Studio](https://developer.android.com/studio/index.html) and the appropriate [Android SDK tools](https://developer.android.com/studio/intro/update.html) for your device installed.

Also, make sure that the necessary folders are in your `PATH` so that the build executables can be found.

On a Linux system with a default Android Studio install the following lines need to be added to the terminal configuration file. It might be different on your system.

```bash
PATH=PATH:$HOME/Android/Sdk/platform-tools:$HOME/Android/Sdk/tools
ANDROID_HOME=$HOME/Android/Sdk
```

Now you can build & transfer the project to your device using the Cordova `run` command.

```bash
ionic cordova platform add android
ionic cordova run android
```