2.0
JavaScript CSS HTML Shell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
gulp
hooks Fix android notification icon Jan 25, 2018
platforms Skeleton commit for the mobile app's Ionic project. Aug 8, 2014
plugins Skeleton commit for the mobile app's Ionic project. Aug 8, 2014
releases Create Dockerfile + scripts for dev/release building Dec 12, 2017
scss Fix first paragraph capitalization Feb 5, 2018
test Sets the mobile app up to run tests, adds a test in for the sharing s… Nov 14, 2014
www
.bowerrc Final app updates pre-handover: Nov 20, 2014
.env.example Receive notifications via topic broadcast, instead of direct send to … Jan 10, 2018
.eslintrc
.gitignore
.travis.yml try switching to trusty Aug 25, 2017
Dockerfile Use headless google chrome for tests Jan 10, 2018
LICENSE Adds a LICENSE to the repo Nov 14, 2014
README.md Update developer documentation Jan 10, 2018
bower.json
build.sh Add --version to build script Jan 26, 2018
config.xml Remove obsolete local-notification plugin Jan 25, 2018
deploy_checklist.md Update deploy_checklist.md Jan 10, 2018
docker-compose.yml Don't set restart policy for dev container Jan 25, 2018
gulpfile.js Sets the mobile app up to run tests, adds a test in for the sharing s… Nov 14, 2014
ionic.project
package.json Remove obsolete local-notification plugin Jan 25, 2018

README.md

EFF Alerts

EFF Alerts is an Ionic app for receiving news and push notifications from EFF.

Copyright (C) 2014-2016 Electronic Frontier Foundation (EFF).

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Table of Contents

Background Info

EFF Alerts is a pager style app that notifies EFF supporters when EFF needs their help.

Although it works on both iOS and Android, the app is only targeting Android as of today. If you need to deploy to iOS as well, please check out the Ionic docs or contact the project maintainer for help.

The app is written using Cordova / Ionic, deploying an Angular webapp inside a UIWebView. This is to reduce the maintenance involved in managing multiple languages and fit with the existing EFF team's expertise.

Getting started

Follow these instructions to develop EFF Alerts using Docker (recommended):

  1. Install Docker (instructions) and Docker Compose (instructions).
  2. git clone https://github.com/EFForg/actioncenter-mobile.git
  3. Copy .env.example to .env.
  4. Copy google-services.json into the project root (if it's not available, just create it as an empty file).
  5. Copy your Android Keystore into the project root at eff-alerts.keystore (only required if you are building a signed APK).
  6. Build the docker image: sudo docker-compose build
  7. Run the application: sudo docker-compose up
  8. Access the app in a web browser at http://localhost:4001/.

NOTE: the app assumes the presence of various plugins that a browser doesn't have, so some actions, e.g. share buttons etc. will not work and will throw errors

Run tests

sudo docker-compose exec app gulp test

Angular app

See the www/README.md for details