Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move to mkdocs #346

Draft
wants to merge 74 commits into
base: main
Choose a base branch
from
Draft

Move to mkdocs #346

wants to merge 74 commits into from

Conversation

ItsDrike
Copy link
Member

@ItsDrike ItsDrike commented Aug 1, 2024

This removes Sphinx in favor of mkdocs for the project documentation.

Mkdocs is a major improvement on Sphinx, bringing us modern looking UI and markdown-based documentation source (rather than rst based with sphinx). The mkdocs syntax is much easier to follow and their usage documentation is a lot more user-friendly, making it generally much easier to write new documentation.

This PR doesn't just move the existing documentation over to mkdocs, rather, it's pretty much a complete rewrite, introducing a lot of new content and greatly modifying almost all of the old pages. This PR fully completes the project documentation task (#19).

Warning

Python docstrings originally written for Sphinx aren't entirely compatible with mkdocs. Even though some basic sphinx formatting is supported, mkdocs is better suited for different docstring formats, like the google or numpy formats, with additional formatting being just the mkdocs markdown. I haven't yet decided whether to keep using sphinx and only resolve the incompatibilities, resulting in docstrings which are half rst, half markdown, or whether to move to one of these other doctring formats.


  • Automatic deployment to GitHub pages
  • Versioned docs
  • Meta pages
    • Introduction
    • Installation category
      • Installation guide
      • Versioning Model
        • Version guarantees
        • Our versioning practices (how mcproto updates with mc protocol updates)
      • Changelog (released changes)
        • Show the existing CHANGELOG.md file in the docs
        • Show upcomming changes using some kind of towncrier integration
  • Usage guides
    • Authentication
    • Manual (low-level) mcproto usage (example from readme)
    • Usage with packet classes (example from readme)
  • Frequently Asked Questions?
    • Differences between mcproto and other libs (quarry)?
    • Why some methods lack sync alternatives (see existing page here)
  • Community category
    • Code of Conduct
    • Attributions
    • License
  • Contributing category
    • Reporting a bug
    • Proposing a feature?
    • Asking a question
    • Making a pull request
    • Security Policy
    • Contributing guidelines
      • Index
      • Setting up the project
      • Style Guide
      • Docstring formatting directive
      • Type hinting
      • Slotscheck
      • Pre-commit
      • Changelog
      • Great commits
      • Unit Tests
      • Breaking changes & Deprecations
      • Writing Documentation
  • API Reference
    • Basic setup for docs autogeneration
    • Outline which features belong to public API and which are considered internal/private
    • Resolve Sphinx style incompatibilities
    • Solve issue with duplicate headers between private & public docs, leading to warnings

@ItsDrike ItsDrike added a: documentation Related to project's documentation (comments, docstrings, docs) p: 2 - normal Normal priority t: rewrite Complete or partial rewrite of something labels Aug 1, 2024
@ItsDrike ItsDrike force-pushed the mkdocs branch 6 times, most recently from f9597f3 to 8288c8f Compare August 1, 2024 21:39
Copy link

github-actions bot commented Aug 1, 2024

PR Preview Action v1.5.0
🚀 Deployed preview to https://py-mine.github.io/mcproto/pr-preview/pr-346/
on branch gh-pages at 2025-01-08 16:43 UTC

@ItsDrike ItsDrike force-pushed the mkdocs branch 17 times, most recently from cf79918 to e665de7 Compare August 6, 2024 18:23
@ItsDrike ItsDrike force-pushed the mkdocs branch 2 times, most recently from 557b7a8 to 0a8188c Compare August 9, 2024 00:51
@py-mine-ci-bot py-mine-ci-bot bot removed the s: stale Has had no activity for a while (will be closed for inactivity/marked up for grabs soon) label Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: documentation Related to project's documentation (comments, docstrings, docs) p: 1 - high This should be addressed quickly t: rewrite Complete or partial rewrite of something
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add project documentation Decide on final versioning structure
1 participant