vergauwenthomas / MetObs_toolkit

A toolkit for using non-traditional meteorological observations
https://vergauwenthomas.github.io/MetObs_toolkit/
MIT License
12 stars 5 forks source link

[JOSS] Documentation Suggestions #388

Open Zeitsperre opened 1 year ago

Zeitsperre commented 1 year ago

Context: https://github.com/openjournals/joss-reviews/issues/5916

These are a few suggestions for the documentation:

vergauwenthomas commented 12 months ago

@Zeitsperre Thanks for this comment, this is much-appreciated advice! I will add this to my todo's.

Zeitsperre commented 8 months ago

Hi @vergauwenthomas

The documentation is looking much better, but the API documentation should be flattened a bit if possible, specifically here: https://vergauwenthomas.github.io/MetObs_toolkit/MetObs_documentation_full.html. Addressing this would be enough for me to check off the remaining Documentation checks in the review.

vergauwenthomas commented 8 months ago

Hi @Zeitsperre

I am working (#434) on the documentation to

  1. Make the documentation API "flatter"
  2. Restructure pages (i am trying to mimic the documentation of geopandas

For now i have added all methods-designed-for-users in the doc's. In addition, i have quite a lot of classes/functions/methods that should not be used by users. These are only relevant for developers. So i am not sure if it is good pracktiche to add them to the documentation or not. @Zeitsperre Do you prefer to add these developer-specific-functions to the documentation?

Zeitsperre commented 8 months ago

Hey @vergauwenthomas

If there are a handful of developer-specific functions, I wouldn't add them to the user API. They should be automatically covered by the automodule for sphinx already, so a power user would probably be able to find these functions if they're looking for them.

If you really wanted to check some boxes, I would suggest having a developer section in your API docs and placing some of these functions in there. Here's an example of how we do this in a project I maintain: https://xclim.readthedocs.io/en/stable/api.html#modules-for-xclim-developers. Feel free to take some inspiration, but there's no need to perform this if the effort is high IMO.

vergauwenthomas commented 8 months ago

Okay, that is clear @Zeitsperre !

Here is a snapshot of the current API documentation (in #434):

Screenshot from 2024-02-14 17-08-39

I prefer method ii, since it is the easiest approach and all relevant info can be found for the developers. @Zeitsperre are you okay with method ii?

(Since I can only deploy one version of the documentation, i have to take screenshots of my local host)

PS. I am still working on #434 for spellcheck + adding examples in the docstrings for the most common methods. I plan to merge it tomorrow, so to resolve this issue.

Zeitsperre commented 8 months ago

@vergauwenthomas

That looks fantastic! Much easier for users/developers to explore the library internals!

Using the module index is perfectly fine as far as I'm concerned; An experienced developer will know where to look.

vergauwenthomas commented 8 months ago

Hi @vergauwenthomas

The documentation is looking much better, but the API documentation should be flattened a bit if possible, specifically here: https://vergauwenthomas.github.io/MetObs_toolkit/MetObs_documentation_full.html. Addressing this would be enough for me to check off the remaining Documentation checks in the review.

@Zeitsperre, The new (flatted + docexamples) documentation is online! I have added docstring examples for the methods of the Dataset, and plan to do the same for the other classes.

I will not close this issue, since i will address your other remarks later.