You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # Introduction
  2. Welcome to the documentation repository for Synapse, a
  3. [Matrix](https://matrix.org) homeserver implementation developed by the matrix.org core
  4. team.
  5. ## Installing and using Synapse
  6. This documentation covers topics for **installation**, **configuration** and
  7. **maintenance** of your Synapse process:
  8. * Learn how to [install](setup/installation.md) and
  9. [configure](usage/configuration/config_documentation.md) your own instance, perhaps with [Single
  10. Sign-On](usage/configuration/user_authentication/index.html).
  11. * See how to [upgrade](upgrade.md) between Synapse versions.
  12. * Administer your instance using the [Admin
  13. API](usage/administration/admin_api/index.html), installing [pluggable
  14. modules](modules/index.html), or by accessing the [manhole](manhole.md).
  15. * Learn how to [read log lines](usage/administration/request_log.md), configure
  16. [logging](usage/configuration/logging_sample_config.md) or set up [structured
  17. logging](structured_logging.md).
  18. * Scale Synapse through additional [worker processes](workers.md).
  19. * Set up [monitoring and metrics](metrics-howto.md) to keep an eye on your
  20. Synapse instance's performance.
  21. ## Developing on Synapse
  22. Contributions are welcome! Synapse is primarily written in
  23. [Python](https://python.org). As a developer, you may be interested in the
  24. following documentation:
  25. * Read the [Contributing Guide](development/contributing_guide.md). It is meant
  26. to walk new contributors through the process of developing and submitting a
  27. change to the Synapse codebase (which is [hosted on
  28. GitHub](https://github.com/matrix-org/synapse)).
  29. * Set up your [development
  30. environment](development/contributing_guide.md#2-what-do-i-need), then learn
  31. how to [lint](development/contributing_guide.md#run-the-linters) and
  32. [test](development/contributing_guide.md#8-test-test-test) your code.
  33. * Look at [the issue tracker](https://github.com/matrix-org/synapse/issues) for
  34. bugs to fix or features to add. If you're new, it may be best to start with
  35. those labeled [good first
  36. issue](https://github.com/matrix-org/synapse/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).
  37. * Understand [how Synapse is
  38. built](development/internal_documentation/index.html), how to [migrate
  39. database schemas](development/database_schema.md), learn about
  40. [federation](federate.md) and how to [set up a local
  41. federation](federate.md#running-a-demo-federation-of-synapses) for development.
  42. * We like to keep our `git` history clean. [Learn](development/git.md) how to
  43. do so!
  44. * And finally, contribute to this documentation! The source for which is
  45. [located here](https://github.com/matrix-org/synapse/tree/develop/docs).
  46. ## Donating to Synapse development
  47. Want to help keep Synapse going but don't know how to code? Synapse is a
  48. [Matrix.org Foundation](https://matrix.org) project. Consider becoming a
  49. supporter on [Liberapay](https://liberapay.com/matrixdotorg),
  50. [Patreon](https://patreon.com/matrixdotorg) or through
  51. [PayPal](https://paypal.me/matrixdotorg) via a one-time donation.
  52. If you are an organisation or enterprise and would like to sponsor development,
  53. reach out to us over email at: support (at) matrix.org
  54. ## Reporting a security vulnerability
  55. If you've found a security issue in Synapse or any other Matrix.org Foundation
  56. project, please report it to us in accordance with our [Security Disclosure
  57. Policy](https://www.matrix.org/security-disclosure-policy/). Thank you!