# Platform Contributor Guide

## Set up the developer environment for Ushahidi

- [Set up your developer-environment](https://docs.ushahidi.com/platform-developer-documentation/set-up-the-developer-environment-for-ushahidi/set-up-your-developer-environment.md)
- [Workflow for adding code](https://docs.ushahidi.com/platform-developer-documentation/set-up-the-developer-environment-for-ushahidi/set-up-your-developer-environment/workflow-for-adding-code.md)
- [Setting up the API with Docker](https://docs.ushahidi.com/platform-developer-documentation/set-up-the-developer-environment-for-ushahidi/set-up-your-developer-environment/setting-up-the-api-with-docker.md)
- [Setting up the platform-client for development](https://docs.ushahidi.com/platform-developer-documentation/set-up-the-developer-environment-for-ushahidi/set-up-your-developer-environment/setting-up-the-platform-client-for-development.md)

## Overview: Platform

- [Platform Developer Documentation](https://docs.ushahidi.com/platform-developer-documentation/platform-developer-documentation.md): USHAHIDI PLATFORM DEVELOPER DOCUMENTATION
- [Code of Conduct](https://docs.ushahidi.com/platform-developer-documentation/code-of-conduct.md): DETAILS OF THE USHAHIDI CODE OF CONDUCT
- [Values](https://docs.ushahidi.com/platform-developer-documentation/code-of-conduct/values.md)

## \[Mzima] Platform

- [Ushahidi Platform Client](https://docs.ushahidi.com/platform-developer-documentation/mzima-platform-2/ushahidi-platform-client.md): USHAHIDI PLATFORM CLIENT DEVELOPER DOCUMENTATION

## \[Legacy v3] Platform

- [\[Legacy v3\] Welcome | README](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/readme.md)
- [Contributing | Getting Involved](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/contributing-or-getting-involved.md): Learn how you can contribute to the Ushahidi Platform to support our shared mission to help marginalized people raise their voice and those who serve them to listen and respond better.
- [Specific tasks needed for COVID19-support](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/contributing-or-getting-involved/covid.md)
- [Add code to Ushahidi](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/contributing-or-getting-involved/workflow-for-adding-code.md)
- [Encouraging contribution from non-developers](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/contributing-or-getting-involved/encouraging-contribution-from-non-developers.md): A project that looks to include non-coders in the development and contribution to Ushahidi's open source.
- [Frequently Asked Questions](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/frequently-asked-questions.md)
- [Join the Ushahidi community](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/get-in-touch.md)
- [Contributors ✨](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/contributors-to-ushahidi.md)
- [🛣️ The Ushahidi Platform Roadmap](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/roadmap.md)
- [V2-V3+ Migration tool](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/roadmap/v2-v3+-migration-tool.md): V3+ refers to V3.x.x and later versions (ie V4.x.x)
- [Privacy and security best practices](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/untitled.md): Small things that go a long way towards improving your security
- [Security as a user](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/untitled/security-as-a-user.md): Basic tips for every tech user‌
- [Security for deployment admins](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/untitled/security-for-deployment-admins.md): Keep your community protected
- [Security for deployment hosts](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/untitled/security-for-deployment-hosts.md)
- [Development: Overview](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/getting-started.md)
- [How to get the source code](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/how-to-get-the-source-code.md)
- [Setup Guides](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives.md)
- [Installing for production environments](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/installing-for-production-environments.md)
- [Development environment with XAMPP](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/xampp.md): The purpose of this guide is to set your local environment for development of the Ushahidi Platform with the help of the XAMPP bundle.
- [Development environment setup with Vagrant](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/vagrant-setup.md)
- [\[Client\] Setting up the Platform Client for development](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/setting-up-the-platform-client.md)
- [Migration from AngularJS](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/setting-up-the-platform-client/migration-from-angularjs.md)
- [Setting up the Pattern Library for development](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/setting-up-the-pattern-library-for-development.md)
- [\[API & Client\] Bundled release install](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/setup_alternatives/platform_release_install.md)
- [Add code to Ushahidi](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/add-code-to-ushahidi.md)
- [Development process](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/development-process.md): The work for the platform is done in 3 week cycles and is composed of 2 phases.
- [Coding Standards](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/coding-standards.md)
- [Track and submit issues in Github](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/issue-tracking.md): All tasks are filed as issues in github.
- [Upgrading Ushahidi](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/upgrading-ushahidi.md): If you want to upgrade your selfhosted deployment please follow these guides.
- [Upgrading to latest release](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/upgrading-ushahidi/upgrading-to-latest-release.md)
- [Upgrading from V3.x.x to V4.x.x](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/upgrading-ushahidi/upgrading-from-v3.x.x-to-v4.x.x.md): In September 2018, we updated the Platform api, removed Kohana (mostly) and started using Lumen. This affects some of the setup and commands used in the api.
- [⚙️ Installation Helper‌](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/development-and-code/installation-helper.md)
- [API Documentation](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/api-documentation.md)
- [Third party app development](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/connected-app-development.md)
- [Web hooks](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/connected-app-development/web-hooks.md)
- [Database | Tables overview](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/tables-overview.md): This is a list of all tables used for the Ushahidi Platform.
- [Database | Database Schema Diagram](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/database-schema-diagram.md)
- [Database | Table details](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/table-details.md): Details for all tables in the Platform database
- [Architecture](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/architecture.md)
- [Use case internals](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/tech-stack/use-case-internals.md)
- [The QA process](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/qa-and-testing/the-qa-process.md)
- [How to run QA tests](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/qa-and-testing/how-to-run-qa-tests.md)
- [Defect Management](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/qa-and-testing/defect-management.md)
- [How to write QA test scripts](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/qa-and-testing/how-to-write-qa-test-scripts.md)
- [Hotfixes](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/qa-and-testing/hotfixes.md): A hotfix is a fix to an issue that has been discovered on production that needs to be fixed and go live ASAP.
- [Changing UI styles: introduction to the pattern library](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library.md)
- [File-structure](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/pattern-library.md)
- [Installing new packages](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/installing-new-packages.md)
- [How to Apply to the Platform](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/how-to-apply-to-the-platform.md)
- [Using the changed styles in platform-client](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/using-the-changed-styles-in-platform-client.md)
- [Syntax and Formatting](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/syntax-and-formatting.md)
- [Grid, Breakpoints, & Media Queries](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/grid-breakpoints-and-media-queries.md)
- [Variables](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/variables.md)
- [Mixins](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/mixins.md)
- [Helpers](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/helpers.md)
- [Icons](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/icons.md)
- [Create a New Component from Scratch](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/create-a-new-component-from-scratch.md)
- [Read Direction](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/front-end-development/changing-ui-styles-introduction-to-the-pattern-library/read-direction.md)
- [Design: overview](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/design-process.md): Understanding the process that internal Ushahidi designers take on and how to contribute design to Ushahidi OSS products.
- ['Best practice' design](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/best-practice-design.md): Guidance on how to design well for Ushahidi.
- [Ushahidi Platform 'Sticker Sheet'](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/ushahidi-platform-sticker-sheet.md): Template and working files to build design for Ushahidi's OSS tools.
- [User testing process](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/user-testing-process.md): Information on how to conduct user testing for Ushahidi.
- [User testing script examples](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/user-testing-script-examples.md): Example user testing scripts to conduct user testing from.
- [Synthesising user testing results examples](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples.md)
- [Synthesis example 1](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples/synthesis-example-1.md)
- [Synthesis example 2](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples/synthesis-example-2.md)
- [Synthesis example 3](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples/synthesis-example-3.md)
- [Synthesis recommendations example 1](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples/synthesis-recommendations-example-1.md)
- [Synthesis recommendations example 2](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/synthesising-user-testing-results-examples/synthesis-recommendations-example-2.md)
- [Open Source Design](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/design/open-source-design.md): Details on contributing to our design process
- [Documentation](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/documentation/contributing-documentation.md)
- [Contributing docs via GitHub](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/documentation/contributing-docs-via-github.md)
- [Localization and Translation](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/translation/software-localization-and-translation.md)
- [The Facebook bot](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/the-ushahidi-platform-facebook-bot/the-facebook-bot.md)
- [Installing the bot](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/the-ushahidi-platform-facebook-bot/the-facebook-bot/installing-the-bot-for-development-and-testing.md)
- [The bot script](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/the-ushahidi-platform-facebook-bot/the-facebook-bot/the-bot-script.md): The script the bot is using is stored in the bot-database. The script is set, but you can customise some parts of it to make it fit well with your deployment and organisation.
- [Installathon, May 2019](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/installathon-may-2019.md): During fall 2018, we ran a survey in our community and we saw that one major obstacle in using the Ushahidi Platform was the installation.
- [Welcome to the hackathon!](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/installathon-may-2019/welcome-to-the-hackathon.md)
- [Write/Speak/Code 2019](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/write-speak-code-2019.md): This page was originally a ticket https://github.com/ushahidi/platform/issues/3659 and was migrated here for historical reasons.
- [Open Design: Bangalore](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/open-design-bangalore.md): Ushahidi's open design workshop in Bangalore at DesignUp! Conference 2019
- [Open Design: Taipei](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/open-design-taipei.md): Ushahidi's open design workshop in Taipei at Open UP global summit 2019
- [Google season of docs](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/google-season-of-docs.md)
- [Google Summer of Code](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/google-summer-of-code.md)
- [GSoC 2024](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/hackathon-and-events/google-summer-of-code/gsoc-2024.md): Welcome to the world of Open Source Software Development
- [Exchange Format](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/enhancement-proposals/exchange-format.md)
- [Importing data from previous versions](https://docs.ushahidi.com/platform-developer-documentation/dev-legacy-v3/enhancement-proposals/importing-data-from-previous-versions.md)
