Technology

Overview

This team is responsible for maintaining https://uchaguzi.or.ke for the duration of our election monitoring project.

During the week of the elections, only the allowed people will be able to publish updates to the codebase. Pull requests for forked code will be accepted, but please note that they will likely not be implemented during a live project unless absolutely critical.

Ways that the public and tech team can help

  1. Click through testing the software. Performing a simple walkthrough of the platform, both the public facing side and the administration, is immediately helpful in helping us ensure that the experience of submitting and processing reports is functional, understandable, and easy.

  2. Fixing and adding patches. When bugs are found in the system, please submit them directly to our code repository with the label uchaguzi2022, and we will immediately assign them to the proper developer.

A detailed walkthrough on how to contribute code to Ushahidi

You need to complete a few steps before starting working on an issue. These are:

  • Read through our Code of Conduct.

  • Get set up and say hello in the slack technology team channel.

  • Get your developer-environment set up. We often recommend using the Vagrant setup, but XAMPP usually works fine too. Once you have set up your API, remember to set up the Platform-client as well! If you get stuck, reach out to the tech team on the Slack channel to get help.

  • Explore the Ushahidi Platform and the different concepts like surveys (also called "forms" in some places) and posts. Try setting up a survey, a few categories, and add some posts. Here is the user documentation

  • Once you have completed steps 1-4, share screenshots of your setup in your browser on the channel and select an issue to work on.

To keep in mind when starting working on issues:

  • Only work on one issue at a time. We are looking for the quality of the contributions.

  • Once you’re assigned an issue, we want you to submit a pull request within a day, even if it is not yet complete or a working solution. This is to make our contributors work "in the open," as is often done in Open Source, and ensure all existing issues are being worked on.

  • We will open up issues to other contributors if you don't show progress within two days. Github has a good guide on how to submit pull requests from a fork

Remember

Ushahidi is an open-source community. The engineering team will try their best to reply to your questions, but there may be delays. You are also assisting the Ushahidi engineering team by helping other members out in your team. So if you see someone asking for help in the chat and know the answer, please help them! Keep the tone friendly and collaborative.

Privacy info/personal info

During the Uchaguzi-process, Ushahidi will store your Github handle in a google-sheet. This is done only to make the application process as smooth as possible and to keep track of which issues are being worked on and the progress of each issue. The information stored will be deleted once the application process is over.

Last updated