Skip to main content

Community Contribution Guidelines

Welcome to Our Documentation Community!

Thank you for your interest in contributing to SyftBox documentation! This guide will walk you through our contribution process, helping you create high-quality documentation that serves the OpenMined community effectively.

Getting Started

Join Our Community

  • Connect with us on Slack - our primary hub for team coordination
  • Join the #team-doc channel to meet fellow contributors and mentors
  • Participate in our regular sync calls (bi-weekly) to stay connected with ongoing efforts

Understanding Our Framework

We follow the Diataxis framework which organizes content into four types:

  • Tutorials: Step-by-step lessons for beginners
  • How-to guides: Practical problem-solving instructions
  • Reference: Technical information and specifications
  • Explanation: Conceptual discussions that provide context

This framework helps us create documentation that addresses different user needs at various stages of their journey.

Before You Contribute

Technical Requirements

  • Familiarity with Git and GitHub workflows
  • Understanding of pull requests, issues, and version control basics
  • Experience with markdown formatting
  • Comfort with asynchronous collaboration
  • Review the current documentation structure
  • Familiarize yourself with basic SyftBox concepts and terminology

Our Quality Standards

  • Accuracy: All information must be verified and tested
  • Functionality: Code examples must be working and validated
  • Clear structure: Logical information flow with consistent formatting
  • Concise language: Active voice with straightforward explanations
  • Engaging tone: Tutorial-style approach with practical examples
  • Consistency: Uniform terminology throughout the documentation

Contribution Workflow

1. Find Your Starting Point

  • For beginners: Check our good first issues
  • For experienced contributors: Identify documentation gaps or improvement opportunities

2. Develop your contribution

  • Determine the content type (tutorial, how-to, reference, or explanation)
  • Create a proposal outlining the changes and ask for feedback
  • Create a fork and feature branch with a descriptive name
  • Include all necessary sections and metadata

4. Submit Your Work

  • Create a pull request describing your changes
  • Verify that automated tests pass successfully

Communication Channels

Team Collaboration

  • Synchronous: Bi-weekly team calls for updates and knowledge sharing
  • Asynchronous: GitHub issues/PRs and Slack discussions
  • Feedback loop: Community input guides our documentation priorities

Getting Help

  • Reach out in the #team-doc Slack channel for questions
  • Attend office hours for direct assistance from experienced contributors
  • Review our comprehensive resources for self-guided learning

Recognition and Growth

We value every contribution to our documentation. Regular contributors may be invited to join the core documentation team, with opportunities for mentorship and skill development.


Your contributions help build a stronger, more accessible resource for the entire OpenMined community. We look forward to collaborating with you!