CONTRIBUTING.rst
.. SPDX-License-Identifier: AGPL-3.0-or-later
.. _Quickstart guide: https://docs.searxng.org/dev/quickstart.html .. _Commits guide: https://docs.searxng.org/dev/commits.html .. _AI Policy: https://github.com/searxng/searxng/blob/master/AI_POLICY.rst .. _Weblate: https://translate.codeberg.org/projects/searxng/searxng/ .. _GitHub Codespaces: https://docs.github.com/en/codespaces/overview .. _120 hours per month: https://github.com/settings/billing .. _list of existing Codespaces: https://github.com/codespaces
Thank you for your interest in SearXNG.
Have a look at our Quickstart guide_, it's very easy to contribute.
Further information on how-to can be found
here <https://docs.searxng.org/dev/index.html>_.
Help translate SearXNG at Weblate_.
.. image:: https://translate.codeberg.org/widget/searxng/searxng/horizontal-auto.svg :target: https://translate.codeberg.org/engage/searxng/ :alt: Weblate :width: 768px
You can contribute from your browser using GitHub Codespaces_:
<> Code green button.Codespaces tab instead of Local.Create codespace on master.git pull && make install to appear and then disappear.120 hours per month_ (see also your list of existing Codespaces_).make run in the terminal or by pressing Ctrl+Shift+B.Please follow the provided PR template when writing a description for your changes.
Do not take criticism personally. When you get feedback, it is about your work, not your character or personality. Keep in mind we all want to make SearXNG better.
When something is not clear, please ask questions to clear things up.
If you would like to introduce a big architectural change or do a refactor, either in the codebase or the development tooling, please open an issue with a proposal first. This way we can think together about the problem and probably come up with a better solution.
Commit messages
- Always write descriptive commit messages *("fix bug" is not acceptable)*.
- Use the present tense *("Add feature", not "Added feature")*.
- Use the imperative mood *("Move cursor to...", not "Moves cursor to...")*.
- Limit the first line (commit title) to 72 characters or less.
See `Commits guide`_ for more details.
Coding guidelines
As a Python project, we must follow PEP 8 <https://www.python.org/dev/peps/pep-0008/>_
and PEP 20 <https://www.python.org/dev/peps/pep-0020/>_ guidelines.
Furthermore, follow Clean Code conventions. The most important rules in this project are:
KISS principle <https://en.wikipedia.org/wiki/KISS_principle>_AI Policy
For our policy on the use of AI tools, please read `AI Policy`_.