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

Transform to modern sphinx framework #9

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from

Conversation

3ter
Copy link

@3ter 3ter commented Feb 24, 2024

As the gitbook-cli this documentation was using is now considered legacy for some time I wanted to modernize it using the sphinx framework and also furo (this can be dropped easily in case it gets deprecated).

Some of the advantages include

  • (automatically) expanding/collapsible sections
  • admonitions
  • mouse hover tooltips

It's still using a (rich and extensible flavor of) markdown but could also be transformed into sphinx own format in the future.

image

I could use some help with the release process though (if you think it's a good idea after all 😊).

@3ter 3ter marked this pull request as draft February 24, 2024 05:07
@3ter 3ter changed the title DRAFT: Transform to modern sphinx framework Transform to modern sphinx framework Feb 24, 2024
@3ter
Copy link
Author

3ter commented Feb 24, 2024

I just realized that there actually is a Gitlab mirror behind the GitHub front. I'm going to revert removing them... And probably add this info from to the README.

Still would appreciate some help with the release process. If you consider it a viable improvement that is.

@leafo
Copy link
Member

leafo commented Feb 29, 2024

I think it's worthwhile moving off of gitbook. I briefly experimented with https://github.com/steveklabnik/rustbook and it seemed to work okay with minimal changes but sphinx could be a better long term replacement. What encouraged your decision over the other options out there?

Keep in mind we currently we currently do do a server side merging of the itchio UI with the generated output of the rendered documentation to create pages like this: https://itch.io/docs/itch/ so having a generated documentation that is as close to plain HTML as possible would be desired if we want to keep that functionality

@3ter
Copy link
Author

3ter commented Feb 29, 2024

@leafo Thank you for the input. Yes, I recognized the merging and supposed that it was desired to keep that.

I actually have been inspired by the docs of the game engine Godot. I always found they are doing it right. I decided for a more minimal approach than the read-the-docs theme variant they are using (they quite heavily modified it and furo seemed perfect for replicating the current layout). I also tried mkdocs-material. It's cool (and hyped) but I still liked the design decisions for Sphinx better (how pages interlink for example, I disliked the nav: directive, I really found it cumbersome to add pages).

Too keep changes small I also decided to use the extension for Sphinx to use markdown instead of its restructured text.

Do you have ideas to help me with publishing it correctly? Should we again use Google Cloud like in the JavaScript file?

EDIT I forgot to say that I like how the Godot docs are separate from their main page. I accept of course if you want to keep it. I just think it adds unnecessary complexity and a top bar which distracts and takes space IMHO.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants