Skip to main content

Introduction

Sphinx is a software development documentation tool written in Python. It is used by hundreds of projects, of some of which you can find on readthedocs.org.

sphinxcontrib.contributors Sphinx extension adds a sidebar box showing the contributors of the documentation. This information is sourced from Git commits and Github user profiles.

https://raw.github.com/miohtama/sphinxcontrib.contributors/master/docs/screenshot.png

Often writing open source software documentation is a thankless task. Providing documentation is oversighted by many software developers. People who write documentation do not get to be in limelight like rockstar developers do. The sphinxcontrib.contributors Sphinx extension encourages writing documentation by giving the face time and link love for the writers on the documentation page itself by adding a new box to Sphinx sidebar.

Benefits

  • Give the credit where the credit is due

  • The process is automatic based on git history and there is no need to have separate contributors list

  • Show that the documentation is written by humans and it doesn’t born automatically

  • Encourage people to write more documentation

Examples

See Plone Developer Documentation.

Installation

Install the package to your virtualenv:

pip install sphinxcontrib.contributors

Install templates and static media files needed for this extension to work. You can download the files from here. Use Github raw file view to download the file.

Add to your Sphinx static resource folder the following files:

transparency.min.js
contributors.js
contributors.css

Add to your Sphinx templates folder the following files:

contributors.html

Usage

The Sphinx HTML is fitted with information of Github API URL where to get commit for a specific file. Then a JavaScript AJAX request is used to pull the commit information. The authors are parsed from the commits.

You get a Github username as tooltip, Github profile link and Github avatar of each author.

  • If there is Github username available, then the Github gravatar or identifcon is displayed with a link to Github profile page

  • If the commiter was not a Github author, then the committer’s name is displayed on a blank image

Limitations

Currently the authors are resolved on the client-side using Github public API. This is suitable for low traffic documentation hosting.

  • Resolving authors during the documentation build time increases the build time considerably

  • With large documentation builds you might hit Github API throttling threshold, making it difficult to do continuous documentation builds

Source code and issue tracking

See the project on Github.

Other

The extension uses git command and Python sh library to extract the Git repository information. Transparency client-side semantic templating library is used to generate DOM tree for face links from Github API JSON.

This project was created in the Plone Conference 2013 with awesome people, many caipirinhas and a lot of fun.

Author

Mikko Ohtamaa (blog, Facebook, Twitter, Google+)

Changelog

1.0 (2013-10-07)

  • Initial release [miohtama]

Metadata

Release files for sphinxcontrib.contributors 1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sphinxcontrib.contributors 1.0
File Size Uploaded
sphinxcontrib.contributors-1.0.zip 204.3 kB Details

Release files / sphinxcontrib.contributors-1.0.zip

Download URL sphinxcontrib.contributors-1.0.zip
Size 204.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2a83c75f14a3616cdbd2f518e7d528985219b3df17fa1cfc5b629058b3f2ee10
BLAKE2b-256 checksum
How to use checksums
e138a1d4acd5b6a7ad04d071c1fc2b83077b4e88452c7d78c0375cdcfacc0ca2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page