1. GotToVote! Registration Centres

The first of the GotToVote! components to be built. This allows easy display and finding of registration centers.


1.1. Requirements

GotToVote! Registration Centres uses:

  1. Github Pages - Serve the HTML
  2. Fusion Tables - Store the database of registration centres

As such, you would need Github and Google accounts respectively. Both are free.

To test the webserver on your own machine, you will need to install Jekyll.

1.2. Installation

Start by creating a fork of GotToVote! RCI repository.

Once done you can clone your version onto your local machine.

git clone[username]/GotToVote-RCI.git

To see it in action almost immediately run:

cd GotToVote-RCI
jekyll serve

That’s it. If you visit http://localhost:4000/ you’ll see a vanilla version of GotToVote! Ghana.

1.3. Data Loading

1.3.1. Structure the Data

Make sure that the data is the following column order and format:

Sample of the above data structure can be found here.

You can use whatever tools you wish to use for the structuring of data, and we recommend using either Google Sheets or Open Refine, or a combination of both. MS Excel is fine too.

Once done, export the data in CSV or TSV format.

1.3.2. Import into Fusion Tables

The data for GotToVote! Registration Centres lives on Fusion Tables. If you’re not familiar with Google Fusion Tables, try the Tutorials.

Create a new fusion table and Import the CSV (or TSV) from your computer.

1.3.3. Access Data via Fusion Tables API

The Fusion Tables REST API provides an easy way to query our table without having to load the entire dataset.

For GotToVote! Registration Centres, we need two things:

  1. Google API Key [Steps]
  2. Table ID [Reference]

Follow the getting started guide here for more information.

So that the data is accessible, make sure the table access permissions is not Private.

Once done, edit the _config.yml file as follows:

# GotToVote Config

election_year: "ELECTION_YEAR"

registration_end_date: "REGISTRATION_END_DATE"




1.4. Deployment

Now you’re ready to rumble. If you would like to see the platform in action on your local machine, simply open the folder in terminal or command prompt and run jekyll serve. You should then be able to see your version of GotToVote! Registration Centres on http://localhost:4000/.

To deploy using Github Pages, just commit and push your latest changes and the platform should be available at http://[YOUR_USERNAME]

To use a custom URL e.g follow the steps here.

We are also very much willing to make available to you so please reach out to hello[at]gottovote[dot]cc.


Any questions on setting up GotToVote? Get in touch at support[at]gottovote[dot]cc

Made Possible With Support From

About GotToVote!

Enabling citizens to get to the ballot box informed and ready.

GotToVote started off as a simple experiment to make data otherwise locked in government, useful to the general public.

Now we seek to make a larger impact in the democratic process by partnering with government, civil society and media organisation to improve the entire process.

Read more