# Stylizacja kodu

{% hint style="info" %}

* Przykłady i moduły Terraform powinny zawierać dokumentację wyjaśniającą funkcje i sposoby ich używania.
* Wszystkie linki w plikach `README.md` powinny być bezwzględne, aby witryna Terraform Registry wyświetlała je poprawnie.
* Dokumentacja może zawierać schematy stworzone za pomocą [mermaid](https://github.com/mermaid-js/mermaid) i plany stworzone za pomocą [cloudcraft.co](https://cloudcraft.co/).
* Korzystaj z [pre-commit hooks dla Terraform](https://github.com/antonbabenko/pre-commit-terraform), aby upewnić się, że kod jest prawidłowy, odpowiednio sformatowany i automatycznie udokumentowany przed przekazaniem go do git'a i sprawdzeniem przez innych.
  {% endhint %}

## Dokumentacja

### Dokumentacja generowana automatycznie

[pre-commit](https://pre-commit.com/) to framework do zarządzania i utrzymywania różnorodnych narzędzi do sprawdzania kodu przed jego wysłaniem do zdalnego repozytorium. Jest napisanym w Pythonie potężnym narzędziem do automatyzacji żmudnych czynności na maszynie programisty, zanim kod zostanie przekazany do repozytorium git. Zwykle jest używany do uruchamiania linterów i formatowania kodu (zobacz [supported hooks](https://pre-commit.com/hooks.html)).

Dzięki konfiguracjom Terraform `pre-commit` może służyć do formatowania i sprawdzania poprawności kodu, a także do aktualizowania dokumentacji.

Sprawdź [repozytorium pre-commit-terraform](https://github.com/antonbabenko/pre-commit-terraform/blob/master/README.md). Zapoznaj się z nim oraz istniejącym repozytoriami (np. [terraform-aws-vpc](https://github.com/terraform-aws-modules/terraform-aws-vpc)), w których jest ono już używane.

### terraform-docs

[terraform-docs](https://github.com/segmentio/terraform-docs) to narzędzie, które generuje dokumentację z modułów Terraform w różnych formatach wyjściowych. Możesz uruchomić go ręcznie (bez pre-commit hooków) lub użyć [pre-commit-terraform](https://github.com/antonbabenko/pre-commit-terraform), aby automatycznie zaktualizować dokumentację.

## Źródła

1. [Strona narzędzia pre-commit](https://pre-commit.com/)
2. [Zbiór git hooków dla Terraform](https://github.com/antonbabenko/pre-commit-terraform)
3. Post napisany przez [Dean Wilson](https://github.com/deanwilson): [pre-commit hooks and terraform - a safety net for your repositories](https://www.unixdaemon.net/tools/terraform-precommit-hooks/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.terraform-best-practices.com/pl/code-styling.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
