Role README πŸ“„ΒΆ

Every Ansible role MUST contain a README.md at the role root. This page defines the required structure and content rules. For general documentation rules (links, writing, emojis, RFC 2119 keywords), see documentation.md.

Structure πŸ“‹ΒΆ

Role README files MUST follow this section order. Optional sections MAY be omitted when they add no value for the role.

1. Title (required) 🏷️¢

The H1 heading MUST be the human-readable name of the application or service, not the role ID.

# Nextcloud

2. Description (required) πŸ“–ΒΆ

A short paragraph that describes what the software is. You MUST NOT describe what the role does here. Link the software name to its official website on first use.

## Description

[Nextcloud](https://nextcloud.com/) is a self-hosted file sync and share platform …

3. Overview (required) πŸ—ΊοΈΒΆ

A short paragraph that describes what the role does: what it deploys, configures, and integrates. Reference any companion documentation files (e.g. Administration.md) here using file-name link text.

## Overview

This role deploys Nextcloud using Docker Compose …
For administration details see [Administration.md](./Administration.md).

4. Cosmos (required) 🌌¢

A ## Cosmos section MUST contain a single Mermaid flowchart that places the role in the Infinito.Nexus cosmos. Group the nodes with subgraphs into three families:

  • Capabilities β€” the containers/components this role deploys (from meta/services.yml).

  • Dependencies β€” the central services and sibling roles it consumes (the enabled: "{{ '<role>' in group_names }}" service flags, plus run_after and any meta/main.yml dependencies).

  • Cosmos β€” the outward reach: federation peers, external networks bridged in, upstream projects.

Draw only what the role metadata declares; do not invent services. Mermaid node ids MUST NOT be reserved words (call, end, click, class, graph, style, subgraph).

## Cosmos

```mermaid
flowchart LR
    subgraph deps [Dependencies]
        postgres["svc-db-postgres"]
    end
    subgraph role [web-app-example]
        app["App container"]
    end
    postgres --> app
```

5. Features (required) ✨¢

A bulleted list of the most important capabilities. Each item MUST start with a bold label followed by a colon and a short explanation.

## Features

- **Self-hosted:** Run the application under your own domain …
- **LDAP Integration:** Authenticate users via a central directory …

6. Use Cases (optional) 🎯¢

Use this section for the concrete scenarios the role is a good fit for, when they are not obvious from Description and Overview. Omit it for roles where the use cases are self-evident.

7. Developer Notes (optional) πŸ”§ΒΆ

Link to role-local documentation files such as Administration.md, Installation.md, or Development.md. You MUST use file-name link text. Never use the full path.

## Developer Notes

See [Administration.md](./Administration.md) for live container inspection and LDAP configuration.

8. Further Resources (optional) πŸ”—ΒΆ

A list of external links relevant to the software or the deployment. Link text MUST be a descriptive label or the domain name. Never use the full URL.

## Further Resources

- [Nextcloud Official Website](https://nextcloud.com/)
- [Nextcloud Admin Manual](https://docs.nextcloud.com/…)

9. Credits (required) πŸ™ΒΆ

Always the last section. MUST follow this fixed format:

## Credits

Implemented by **[Author name](Author URL)**.
Part of the [Infinito.Nexus Project](https://s.infinito.nexus/code) and maintained by [Kevin Veen-Birkenbach](https://www.veen.world).
Licensed under the [Infinito.Nexus Community License (Non-Commercial)](https://s.infinito.nexus/license).

Author name MUST equal galaxy_info.author in the role’s meta/main.yml (the author single point of truth). It MAY be wrapped in a Markdown link as shown, or left as plain bold text (Implemented by **Author name**.) when no author URL applies.

Formatting Rules πŸ“ΒΆ

  • Role README files MUST NOT use emojis in headings. Emojis in role READMEs interfere with automated tooling that parses heading text.

  • Body text MAY use emojis where they improve readability.

  • All headings MUST use sentence-case (capitalize only the first word and proper nouns).

  • Link text MUST follow the link rules in documentation.md.