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

The preliminary results of this work are hosted at

Additional updated documentation hosted at

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

Projects/Gjs/Documentation (last edited 2017-06-26 23:48:53 by MiguelVaello)