How to Contribute
Documentation in patria-tech-docs-kb is maintained as code in Git. Any team member can create and edit pages using Obsidian and GitHub Desktop, with automatic publishing via Quartz on every commit to main.
Initial Setup
1. Create a GitHub account and request access
- Ensure you have a GitHub account
- Request access to the patria-investimentos/patria-tech-docs-kb repository from your manager or tech lead
2. Install GitHub Desktop
- Download GitHub Desktop for your operating system
- Install and launch the application
- Sign in with your GitHub account
- Authorize the app to access your GitHub repositories
3. Clone the repository with GitHub Desktop
- Go to File → Clone Repository
- Click the URL tab
- Paste the repository URL:
https://github.com/patria-investimentos/patria-tech-docs-kb.git - Choose a local path on your computer (e.g.,
~/Documents/patria-tech-docs-kb) - Click Clone
4. Install and open Obsidian
- Download Obsidian for your operating system
- Install and launch the application
- Click Open folder as vault
- Navigate to the cloned repository folder and select it
- Trust the vault when prompted
Tip
Obsidian tip: Use the graph view (Ctrl+G / Cmd+G) to visualize connections between documents. The backlinks pane shows which pages reference the current document.
Contribution workflow
Step 1: Create or edit a document
- In Obsidian, navigate to the appropriate folder based on document type (see table below)
- Create a new file or edit an existing one
- Start with the required frontmatter (see section below)
- Follow the writing best practices and templates
Step 2: Save your changes
- Obsidian auto-saves as you type — no manual save needed
- Git will track all changes automatically
Step 3: Commit to main branch
- Open GitHub Desktop
- Click the Changes tab — you’ll see all modified files
- Review the changes in the preview pane
- Enter a commit message following the format:
docs: add/update [description]- Examples:
docs: add BigQuery runbook,docs: update ADR-001
- Examples:
- Click Commit to main
- Click Push origin to publish to GitHub
Step 4: Publishing (automatic)
- The documentation site automatically rebuilds and deploys within minutes of your commit
- View the published site at your team’s Quartz portal URL
- No manual deployment steps needed
Where to create each document type
| What to document | Where to create |
|---|---|
| New system | Copy _templates/template-system.md → 06-systems/[system-name]/index.md |
| System runbook | Copy _templates/template-runbook.md → 06-systems/[system-name]/runbooks/[procedure].md |
| Architecture decision | Copy _templates/template-adr.md → 02-architecture/adr/adr-NNN-short-title.md |
| Postmortem | Copy _templates/template-postmortem.md → 08-support/postmortems/YYYY-MM-DD-title.md |
| Data catalog entry | Add entry to 07-data/catalog/datasets-[domain].md |
Required frontmatter
Every .md file must start with exactly these 4 fields:
---
title: "Descriptive title here"
status: draft
tags: [Category, System, Technology]
updated: 2026-05-06
---Field guide:
| Field | Purpose | Example |
|---|---|---|
title | Human-readable title (will display on published page) | "BigQuery — Data Lake", "N8N automation platform" |
status | Publication status: draft (internal only) or active (published) | active |
tags | Category tags for organization (Title Case, comma-separated) | [System, Data, GCP] |
updated | Last update date in YYYY-MM-DD format | 2026-05-06 |
Naming conventions
- Folders and files:
kebab-case(e.g.,private-equity.md,totvs-fluig/) - File titles (frontmatter): User-friendly, readable format (Title Case or sentence case)
- Example:
"BigQuery — Data Lake"or"ADR-001: Authentication with Entra ID"
- Example:
- Headings in content: Sentence case preferred (e.g.,
## Overview) - ADRs:
adr-NNN-short-title.mdwith sequential numbering - Postmortems:
YYYY-MM-DD-short-title.md
Writing best practices
Use admonitions for emphasis
> [!warning]
>
> **Title:** Important warning content here
> [!tip]
>
> **Tip:** Helpful suggestion
> [!info]
>
> **Info:** Additional contextSupported types: note, abstract, info, todo, tip, success, question, warning, failure, danger, bug, example, quote
Structure for clarity
- Prefer lists and tables over long paragraphs
- Use relative links between documents:
[Link text](../../runbooks/system/procedure.md) - Avoid H4 headings; stick to H1–H3 and don’t skip heading levels
Add diagrams
Include Mermaid diagrams for architecture and flows:
flowchart LR A[System A] --> B[API Gateway] --> C[System B]
Updating a published document
- Open the document in Obsidian and make your changes
- Update the
updatedfield to today’s date - Commit to main via GitHub Desktop with message:
docs: update [document name] - The site rebuilds automatically
Questions?
- Check
01-getting-started/contacts.mdfor team ownership and who to ask - Review existing documents in the repository to see examples of good structure