Developer documentation for Gjs
Documentation for Gjs, and for the GNOME platform libraries as used in gjs, is hosted in the gjs-documentation module in git.
It is written in mallard and generated through g-ir-doc-tool. The module includes a basic Makefile to build the documentation locally, as well as upload it to people.gnome.org.
The preliminary results of this work are hosted at http://people.gnome.org/~gcampagna/docs/
Additional updated documentation hosted at http://devdocs.baznga.org/
Why a gjs-documentation git module?
Because we host also documentation for gjs-specific APIs in GLib, GObject and Gio (so called "overrides"). In the future we will host documentation for native gjs APIs (Lang, Mainloop, Signals...)
Known bugs and limitations
- g-ir-doc-tool needs to understand gtk-doc Markdown
- g-ir-doc-tool sometimes generates wrong documentation for impossible to use boxed types (such as GOptionEntry)
- g-ir-doc-tool does not understand gtk-doc sectioning, so the content is structured different than the C API
- cross-references to non-introspectable APIs are dead (because the page does not exists)
- the textual documentation is very C centric, refers to memory management, skipped arguments...
- the yelp-tool output is ugly
- there is no summary page for the whole platform
- Clutter and Gdk take a lot of disk space, because each keysym constant is on its own page