We Vote's iOS and Android versions.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Running the app:

From within the root directory after cloning,


npm install

This will add all required dependencies from package.json

Alternatively, if you use yarn, run:

yarn install

To run on iOS:

react-native run-ios

To run on android:

react-native run-android

Current Thoughts About Our Native Project:

Please read and contribute to our WeVoteReactNative Wiki!

We Vote React Native - README Home

This repository contains We Vote's iOS and Android versions built with ReactNative. It is being built based on specifications created and tested in the We Vote WebApp Using data we have gathered in our API Server from Google Civic API, Vote Smart, MapLight, TheUnitedStates.io and the Voting Information Project. We give voters a social way to interact with ballot data.

Interested in volunteering? Starting presentation here. Please also read about our values and see our Code of Conduct

You can see our current wireframe mockup for a San Francisco ballot here: http://start.wevoteusa.org/

And finally, the current live demo version of the mobile website version is here: https://wevote.me (Our iPhone and Android versions are not available to the public yet.)

Learn about React Native

Some articles to orient you:

Writing Cross-Platform Apps with React Native

Our commentary: If you know ReactJS, the transition to React Native is very logical -- BUT we are finding that all rendering is new code, and we are not able to bring over too much from our wevote/WebApp repo. We believe that we will be able to use the same data Store and Action code.

The React Native documentation is a great place to start.

These are some videos which'll give you a brief overview of React Native.

React.js Conf 2015 Keynote - Introducing React Native (32 minutes)

React.js Conf 2015 Keynote 2 - A Deep Dive into React Native (30 minutes)

Installing WeVoteReactNative

NOTE: For developing on macOS the environment installation will likely need 10-15gb of drive space. Android SDK and Android Studio installation and emulation will likely require approximately 40gb of drive space.

  1. Preparing the Environment on Your Machine

  2. Bringing Code to Your Machine

  3. iOS and Android Specific Instructions

3a. Installation for iOS Development

3b. Installation for Android Development

4a. Running WeVoteReactNative iOS for the First Time

4b. Running WeVoteReactNative Android for the First Time

Working with WeVoteReactNative

  1. Working with WeVoteReactNative Day-to-Day

  2. Working with react-native-router-flux

3a. Debugging Tools and Tips iOS

3b. Debugging Tools and Tips Android

  1. Issues and Reporting Bugs

Contributing to the Project

Please read the following before you start contributing to the project. Thank you!

Coding Standards and Best Practices

How to Submit Code / Pull Requests

  1. What the Heck is a Pull Request?

  2. Before Your First Pull Request

  3. Creating a Pull Request

  4. Pull Request Advanced Tips & Tricks

  5. Troubleshooting Pull Request Problems

  6. Approving Pull Requests