2022-10-23 :: Devhelp
Tobias Bernard has recently published this article on the Planet GNOME and mentions Devhelp. Since I did a fair amount of development contributions to Devhelp more or less recently (compared to the whole GNOME history), I would like to talk a bit more about it.
Devhelp has always been a Local-First app, not requiring an internet connection to work. It hasn't been created by me, it existed long before I started developing with GTK, so the original authors and past contributors need to be thanked. The first commits were done by Johan Dahlin in 2001. In comparison my first commit to Devhelp was in 2015.
Tobias writes: "maybe we could revive/modernize Devhelp?". And as a suggestion at the end of his article: "Revive or replace the Devhelp offline documentation app", among other items. Between 2015 and 2021, I contributed more than a thousand commits (exactly 1024 on the main branch, actually), and there were other contributors. Here is a summary of what was the roadmap, to give an idea.
On the roadmap, see especially the last two items (still in the todo state) which I think are very interesting:
- Download the latest stable/unstable GNOME API references - Only for the GNOME profile
- Implement a start page specific for GTK/GNOME - Only for the GNOME profile
The concept of a "profile" for Devhelp doesn't come from me, there was a prototype done by Aleksander Morgado. The idea is to have different book shelfs for Devhelp: one set of books for GLib/GTK/GNOME (possibly with the ability to choose the GNOME version), and the possiblity to create other profiles because Devhelp is a generic API documentation browser and can be used by other software communities.
The done items in the roadmap were basically for two purposes:
- Reducing the backlog of maintenance tasks, with an eye towards GTK 4.
- Almost all the preparation for a clean and robust solution to implement profiles.
I like to think of the profile system preparation that I did as similar as glvnd (see this post by Christian Schaller and search "glvnd" and "hacks"), but for Devhelp it's at a much smaller scale of course.
One more thing, see this commit by Emmanuele Bassi (2021). This didn't (and still doesn't) help my motivation to contribute to Devhelp again.
On a related note, this reminds me of this GTK to Qt migration developer feedback (I really wish things can change!).
I hope my work in Devhelp is or was appreciated, although under-the-hood changes are mostly invisible. Thank you.
Even though it's not possible to write comments on this blog, don't hesitate to drop me an email. I do read them, and like to have feedbacks and to exchange ideas.