building-python-communities

Builds and manages open source Python library communities including CONTRIBUTING.md, CODE_OF_CONDUCT.md, issue/PR templates, contributor recognition, and GitHub automation. Use when setting up community infrastructure, improving contributor experience, or managing project governance.

wdm0006/python-skills75 installsMITSynced Aug 26

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: building-python-communities
description: Builds and manages open source Python library communities including CONTRIBUTING.md, CODE_OF_CONDUCT.md, issue/PR templates, contributor recognition, and GitHub automation. Use when setting up community infrastructure, improving contributor experience, or managing project governance.
license: MIT
---

# Python Library Community Management

## Essential Files

### CONTRIBUTING.md

```markdown
# Contributing

## Development Setup

git clone https://github.com/user/package.git
cd package
uv sync --extra dev
pre-commit install
pytest

## Making Changes

1. Create a branch: `git checkout -b feature/name`
2. Make changes, add tests
3. Run: `make test && make lint`
4. Commit and open a PR

## Commit Messages

- `Add:` new feature
- `Fix:` bug fix
- `Update:` enhancement
- `Docs:` documentation
```

### CODE_OF_CONDUCT.md

Use [Contributor Covenant](https://www.contributor-covenant.org/) - the standard for open source.

## Issue Templates

**.github/ISSUE_TEMPLATE/bug_report.md:**
```markdown
---
name: Bug Report
labels: 'bug'
---
## Description
## To Reproduce
## Expected vs Actual Behavior
## Environment (OS, Python version, package version)
## Minimal Reproducible Example
```

**.github/ISSUE_TEMPLATE/feature_request.md:**
```markdown
---
name: Feature Request
labels: 'enhancement'
---
## Problem Statement
## Proposed Solution
## Example Usage
```

## PR Template

**.github/PULL_REQUEST_TEMPLATE.md:**
```markdown
## Description
## Related Issue (Fixes #)
## Checklist
- [ ] Tests added
- [ ] Documentation updated
- [ ] CHANGELOG entry added
```

## GitHub Actions Automation

```yaml
# .github/workflows/welcome.yml
on:
  pull_request_target:
    types: [opened]
jobs:
  welcome:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/first-interaction@v1
        with:
          pr-message: "Thanks for your first PR! 🎉"
```

## Labels

- `good first issue` - Newcomer-friendly
- `help wanted` - Extra attention needed
- `bug`, `enhancement`, `documentation`

For detailed templates, see:
- **[TEMPLATES.md](TEMPLATES.md)** - Full issue/PR templates
- **[GOVERNANCE.md](GOVERNANCE.md)** - Project governance guide

## Checklist

```
Initial Setup:
- [ ] CONTRIBUTING.md
- [ ] CODE_OF_CONDUCT.md
- [ ] Issue templates
- [ ] PR template
- [ ] Labels defined

Ongoing:
- [ ] Respond to issues within 48h
- [ ] Review PRs within 1 week
- [ ] Maintain good first issues
- [ ] Recognize contributors
```

## Learn More

This skill is based on the [Maintenance](https://mcginniscommawill.com/guides/python-library-development/#maintenance-the-long-game) section of the [Guide to Developing High-Quality Python Libraries](https://mcginniscommawill.com/guides/python-library-development/) by [Will McGinnis](https://mcginniscommawill.com/). See these posts for deeper coverage:

- [Building Engaging Community](https://mcginniscommawill.com/posts/2025-01-22-building-engaging-community/)
- [Inner Source Introduction](https://mcginniscommawill.com/posts/2025-02-11-inner-source-introduction/)
- [Building Internal Library Community](https://mcginniscommawill.com/posts/2025-02-15-building-internal-library-community/)
- [From Silos to Shared Libraries](https://mcginniscommawill.com/posts/2025-02-18-silos-to-shared-libraries/)
- [Cursor for Library Maintenance](https://mcginniscommawill.com/posts/2025-03-09-cursor-for-library-maintenance/)

More DevOps & Infrastructure skills

← All DevOps & Infrastructure skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY