# Introduction

Welcome to the documentation repository for Synapse, a Matrix homeserver implementation developed by the matrix.org core team.

## Installing and using Synapse

This documentation covers topics for installation, configuration and maintenance of your Synapse process:

- Learn how to install and configure your own instance, perhaps with Single Sign-On.

- See how to upgrade between Synapse versions.

- Administer your instance using the Admin API, installing pluggable modules, or by accessing the manhole.

- Learn how to read log lines, configure logging or set up structured logging.

- Scale Synapse through additional worker processes.

- Set up monitoring and metrics to keep an eye on your Synapse instance's performance.

## Developing on Synapse

Contributions are welcome! Synapse is primarily written in Python. As a developer, you may be interested in the following documentation:

- Read the Contributing Guide. It is meant to walk new contributors through the process of developing and submitting a change to the Synapse codebase (which is hosted on GitHub).

- Set up your development environment, then learn how to lint and test your code.

- Look at the issue tracker for bugs to fix or features to add. If you're new, it may be best to start with those labeled good first issue.

- Understand how Synapse is built, how to migrate database schemas, learn about federation and how to set up a local federation for development.

- We like to keep our `git` history clean. Learn how to do so!

- And finally, contribute to this documentation! The source for which is located here.

## Donating to Synapse development

Want to help keep Synapse going but don't know how to code? Synapse is a Matrix.org Foundation project. Consider becoming a supporter on Liberapay, Patreon or through PayPal via a one-time donation.

If you are an organisation or enterprise and would like to sponsor development, reach out to us over email at: support (at) matrix.org

## Reporting a security vulnerability

If you've found a security issue in Synapse or any other Matrix.org Foundation project, please report it to us in accordance with our Security Disclosure Policy. Thank you!