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.
swarms/docs/contributors/docs.md

11 KiB

Contributing to Swarms Documentation


The Swarms documentation serves as the primary gateway for developer and user engagement within the Swarms ecosystem. Comprehensive, clear, and consistently updated documentation accelerates adoption, reduces support requests, and helps maintain a thriving developer community. This guide offers an in-depth, actionable framework for contributing to the Swarms documentation site, covering the full lifecycle from initial setup to the implementation of our bounty-based rewards program.

This guide is designed for first-time contributors, experienced engineers, and technical writers alike. It emphasizes professional standards, collaborative development practices, and incentivized participation through our structured rewards program. Contributors play a key role in helping us scale and evolve our ecosystem by improving the clarity, accessibility, and technical depth of our documentation.


1. Introduction

Documentation in the Swarms ecosystem is not simply static text. It is a living, breathing system that guides users, developers, and enterprises in effectively utilizing our frameworks, SDKs, APIs, and tools. Whether you are documenting a new feature, refining an API call, writing a tutorial, or correcting existing information, every contribution has a direct impact on the products usability and user satisfaction.

Objectives of this Guide:

  • Define a standardized contribution workflow for Swarms documentation.

  • Clarify documentation roles, responsibilities, and submission expectations.

  • Establish quality benchmarks, review procedures, and formatting rules.

  • Introduce the Swarms Documentation Bounty Program to incentivize excellence.


2. Why Documentation Is a Strategic Asset

  1. Accelerates Onboarding: Reduces friction for new users, enabling faster adoption and integration.
  2. Improves Support Efficiency: Decreases dependency on live support and helps automate resolution of common queries.
  3. Builds Community Trust: Transparent documentation invites feedback and fosters a sense of shared ownership.
  4. Enables Scalability: As Swarms evolves, up-to-date documentation ensures that teams across the globe can keep pace.

By treating documentation as a core product component, we ensure continuity, scalability, and user satisfaction.


3. Understanding the Swarms Ecosystem

The Swarms ecosystem consists of multiple tightly integrated components that serve developers and enterprise clients alike:

  • Core Documentation Repository: The main documentation hub for all Swarms technologies GitHub.

  • Rust SDK (swarms_rs): Official documentation for the Rust implementation. Repo.

  • Tools Documentation (swarms_tools): Guides for CLI and GUI utilities.

  • Hosted API Reference: Up-to-date REST API documentation: Swarms API Docs.

  • Marketplace & Chat: Web platforms and communication interfaces swarms.world.

All contributions funnel through the docs/ directory in the core repo and are structured via MkDocs.


4. Documentation Tools and Platforms

Swarms documentation is powered by MkDocs, an extensible static site generator tailored for project documentation. To contribute, you should be comfortable with:

  • Markdown: For formatting structure, code snippets, lists, and links.

  • MkDocs Configuration: mkdocs.yml manages structure, theme, and navigation.

  • Version Control: GitHub for branching, version tracking, and collaboration.

Recommended Tooling:

  • Markdown linters to enforce syntax consistency.

  • Spellcheckers to ensure grammatical accuracy.

  • Doc generators for automated API reference extraction.


5. Getting Started with Contributions

5.1 System Requirements

  • Git v2.30 or higher

  • Node.js and npm for related dependency management

  • MkDocs and Material for MkDocs theme (pip install mkdocs mkdocs-material)

  • A GitHub account with permissions to fork and submit pull requests

5.2 Forking the Swarms Repository

  1. Visit: https://github.com/kyegomez/swarms

  2. Click on Fork to create your version of the repository

5.3 Clone and Configure Locally

git clone https://github.com/<your-username>/swarms.git
cd swarms/docs
git checkout -b feature/docs-<short-description>

6. Understanding the Repository Structure

Explore the documentation directory:

docs/
├── index.md
├── mkdocs.yml
├── swarms_rs/
│   ├── overview.md
│   └── ...
└── swarms_tools/
    ├── install.md
    └── ...

6.1 SDK/Tools Directories

  • Rust SDK (docs/swarms_rs): Guides, references, and API walkthroughs for the Rust-based implementation.

  • Swarms Tools (docs/swarms_tools): CLI guides, GUI usage instructions, and architecture documentation.

Add new .md files in the folder corresponding to your documentation type.

6.2 Configuring Navigation in MkDocs

Update mkdocs.yml to integrate your new document:

nav:
  - Home: index.md
  - Swarms Rust:
      - Overview: swarms_rs/overview.md
      - Your Topic: swarms_rs/your_file.md
  - Swarms Tools:
      - Installation: swarms_tools/install.md
      - Your Guide: swarms_tools/your_file.md

7. Writing and Editing Documentation

7.1 Content Standards

  • Clarity: Explain complex ideas in simple, direct language.

  • Style Consistency: Match the tone and structure of existing docs.

  • Accuracy: Validate all technical content and code snippets.

  • Accessibility: Include alt text for images and use semantic Markdown.

7.2 Markdown Best Practices

  • Sequential heading levels (#, ##, ###)

  • Use fenced code blocks with language identifiers

  • Create readable line spacing and avoid unnecessary line breaks

7.3 File Placement Protocol

Place .md files into the correct subdirectory:

  • Rust SDK Docs: docs/swarms_rs/

  • Tooling Docs: docs/swarms_tools/


8. Updating Navigation Configuration

After writing your content:

  1. Open mkdocs.yml
  2. Identify where your file belongs
  3. Add it to the nav hierarchy
  4. Preview changes:
mkdocs serve
# Open http://127.0.0.1:8000 to verify output

9. Workflow: Branches, Commits, Pull Requests

9.1 Branch Naming Guidelines

  • Use prefix and description, e.g.:
    • feature/docs-api-pagination

    • fix/docs-typo-tooling

9.2 Writing Clear Commits

Follow Conventional Commits:

docs(swarms_rs): add stream API tutorial
docs(swarms_tools): correct CLI usage example

9.3 Submitting a Pull Request

  1. Push your feature branch
  2. Open a new PR to the main repository
  3. Use a descriptive title and include:
    • Summary of changes
    • Justification
    • Screenshots or previews
  4. Tag relevant reviewers and apply labels (documentation, bounty-eligible)

10. Review, QA, and Merging

Every PR undergoes automated and human review:

  • CI Checks: Syntax validation, link checking, and formatting

  • Manual Review: Maintain clarity, completeness, and relevance

  • Iteration: Collaborate through feedback and finalize changes

Once approved, maintainers will merge and deploy the updated documentation.


11. Swarms Documentation Bounty Initiative

To foster continuous improvement, we offer structured rewards for eligible contributions:

11.1 Contribution Types

  • Creating comprehensive new tutorials and deep dives

  • Updating outdated references and examples

  • Fixing typos, grammar, and formatting errors

  • Translating existing content

11.2 Reward Structure

Tier Description Payout (USD)
Bronze Typos or minor enhancements (< 100 words) $1 - $5
Silver Small tutorials, API examples (100500 words) $5 - $20
Gold Major updates or guides (> 500 words) $20 - $50
Platinum Multi-part guides or new documentation verticals $50 - 300

11.3 Claiming Bounties

  1. Label your PR bounty-eligible
  2. Describe expected tier and rationale
  3. Review team assesses scope and assigns reward
  4. Rewards paid post-merge via preferred method (PayPal, crypto, or wire)

12. Best Practices for Efficient Contribution

  • Stay Updated: Sync your fork weekly to avoid merge conflicts

  • Atomic PRs: Submit narrowly scoped changes for faster review

  • Use Visuals: Support documentation with screenshots or diagrams

  • Cross-Reference: Link to related documentation for completeness

  • Version Awareness: Specify SDK/tool versions in code examples


13. Style Guide Snapshot

  • Voice: Informative, concise, and respectful

  • Terminology: Use standardized terms (Swarm, Swarms) consistently

  • Code: Format snippets using language-specific linters

  • Accessibility: Include alt attributes and avoid ambiguous links


14. Monitoring & Improving Documentation Health

We use analytics and community input to prioritize improvements:

  • Traffic Reports: Track most/least visited pages

  • Search Logs: Detect content gaps from common search terms

  • Feedback Forms: Collect real-world user input

Schedule quarterly audits to refine structure and content across all repositories.


15. Community Promotion & Engagement

Promote your contributions via:

Active contributors are often spotlighted for leadership roles and community awards.


16. Resource Index

Join our monthly Documentation Office Hours for real-time mentorship and Q&A.


17. Frequently Asked Questions

Q1: Is MkDocs required to contribute?
A: It's recommended but not required; Markdown knowledge is sufficient to get started.

Q2: Can I rework existing sections?
A: Yes, propose changes via issues first, or submit PRs with clear descriptions.

Q3: When are bounties paid?
A: Within 30 days of merge, following internal validation.


18. Final Thoughts

The Swarms documentation is a critical piece of our technology stack. As a contributor, your improvements—big or small—directly impact adoption, user retention, and developer satisfaction. This guide aims to equip you with the tools, practices, and incentives to make meaningful contributions. Your work helps us deliver a more usable, scalable, and inclusive platform.

We look forward to your pull requests, feedback, and ideas.