-
Notifications
You must be signed in to change notification settings - Fork 14
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
Suggestion: migrate user documentation to this repo #911
Comments
@cmeessen @ctwhome @jmaassen @ewan-escience @fembau Yes we need to update documentation library. There is a reason why the user documentation is in the production repo. For documentation websites we use the github pages as hosting platform. The github pages of the main RSD repo host the developers documentation. I think we need to discuss and decide about :
I am interested to hear what are your thoughts about documentation approach. |
Many of the projects at the eScience Center use sphinx for documentation. Some examples (there are many more): Many of the well known python projects also use it: While originally designed for python documentation, it is now widely used for other purposes. It it also capable of generating other formats than HTML (pdf, epub, etc.) It's very suitable for both user and developer documentation. edit: According to Ewan, sphinx can be a bit complicated to use initially. Also, the default format is not markdown but reStructuredText which has a different syntax |
To ensure low development maintenance, the documentation has a GitHub action that triggers automatically. However, it may be more convenient to combine repositories to simplify the pull request process. We all know that maintaining documentation can be challenging, so any efforts to reduce development fatigue would be beneficial. Docusaurus might be a better choice since it is based on React. Moreover, Netlify recently acquired Gatsby, which is also based on React. There are, of course, other systems available, which you can check out at https://jamstack.org/. You can use Svelte with MDX via https://madewithsvelte.com/mdsvex, but it will require custom code. Therefore, I recommend selecting a platform that is specifically designed for documentation, such as Docusaurus, VitePress, etc. |
Jekyll is another option we frequently use. For example: The integration with github is excellent, as the github pages are based on Jekyll. Jekyll seems to focus a bit more on ease of use than Sphinx. As a result there are 1M+ github.io pages based on this. It also has a huge number of themes available, both free and commercial (see https://jekyllthemes.io/free), and some focus on developing documentation such as:
and many others. It is based on markdown, it shouldn't be hard to re-use the existing documentation. |
It's important to consider if there's a genuine problem or requirement with the current solution, and to identify its limitations beyond being in maintenance mode. If we introduce a new platform, it will bring about changes to the style and configuration. I propose that we avoid changing frameworks until version 2 is released. This will help to alleviate some of the development pressure. |
Thanks for your reactions and great ideas! I see three main areas we need to decide on. Let's discuss it during the standup.
Searching on the web about the documentation tools and approaches I saw the idea to keep the documentation |
For some previous projects I used a combination of Jekyll, markdown files, generated documentation and github.io, all in the source repo. This was very simple to use. I would very much prefer to go for something extremely stable and widely used that integrates well will github and our build pipeline. Jekyll and Sphinx seem to be the obvious choices then. The advantage of Jekyll will be that the migration will be almost trivial, provided we don't mind that the design of the documentation pages change a bit. |
After today's discussion we agreed on the following approach. Not everyone participated today and we would like to hear your feedback. Short termFor the initial v2 release we use the current approach. We simply check our current documentation and update the content if needed. We assume that documentation can be build and deployed without any problems. Long(er) termWe want to migrate to new documentation tool. There are 3 candidates we want to evaluate: Docusaurus, Hugo and Jekyll. We do not have experience with any of them. Therefore POC's should be done in order to decide which tool suits our needs and we can optimally work with. The POC's should evaluate the tool on each of the requirements listed bellow. We can use grade 1-10 maybe? Requirements for new documentation toolThe requirements are listed in order of importance
Location of documentationWe decided to combine user and technical documentation into one documenation website. The source code will be in the main RSD repo. We have not decided where documentation will exactly be published. We are considering two options:
@cmeessen @ctwhome @jmaassen @ewan-escience @fembau This is summary of our meeting about the documentation. Please react if you have any additional suggestions objectsions or advice. |
Docusaurus evaluationThe Documentation is good. I also found videos listed below quite useful. Remarks
Source codeNote! I tested docusaurus features using my private github account. These repo's are public: @cmeessen, @jmaassen, @ctwhome, @ewan-escience, @fembau Anyone wants to try Hugo or Jekyll on these points? |
After some thinking and discussions we decided on the following:
@ctwhome, @ewan-escience, @jmaassen, @cmeessen, @fembau If no objections to this proposal I will start working on the implementation next week. |
We would like to suggest to migrate research-software-directory/documentation to this repository.
We think that this could have some benefits, e.g.
Apart from this, there are several issues updating the dependencies of the documentation. But this might have to go into a new issue.
The text was updated successfully, but these errors were encountered: