inko-lang / inko

A language for building concurrent software with confidence
http://inko-lang.org/
Mozilla Public License 2.0
815 stars 38 forks source link

Generate documentation for third-party packages similar to https://docs.rs/ #726

Open yorickpeterse opened 1 week ago

yorickpeterse commented 1 week ago

Description

With https://github.com/inko-lang/inko/issues/333 completed, we now have the means to generate documentation for a project.

To make it easier to find documentation for existing projects, we should set up something similar to https://docs.rs/ that generates documentation for a list of projects.

Ideally this tool uses the list of packages found here, such that users don't need to submit their package to two different repositories.

A few challenges/questions present themselves when building this:

I feel a push model would be better instead of pulling, but this requires a mechanism by which users can submit a request to generate the documentation for a certain package.

One way we could do this is by tying it into the package list of the website: when the website generator updates the package metadata, it also triggers a CI build to generate the documentation for that project. This way the documentation portal doesn't have to maintain any state. The downside is that we currently only update the package list once a week, which may not be fast enough in the future, though we could allow users to manually submit a request of some sort at some point.

TODO

Related work

No response

yorickpeterse commented 1 week ago

Regarding the use of recurring workflows, GitHub automatically disables recurring workflows if no repository activity is detected for 60 days: https://docs.github.com/en/actions/learn-github-actions/usage-limits-billing-and-administration#disabling-and-enabling-workflows