Metadata-Version: 2.4
Name: gi-docgen
Version: 2026.1
Summary: Documentation tool for GObject-based libraries
Home-page: https://gitlab.gnome.org/GNOME/gi-docgen
Author: Emmanuele Bassi
Author-email: ebassi@gnome.org
License: GPL-3.0-or-later AND Apache-2.0 AND CC0-1.0
Project-URL: Bug tracker, https://gitlab.gnome.org/GNOME/gi-docgen/issues/
Project-URL: Documentation, https://gnome.pages.gitlab.gnome.org/gi-docgen/
Keywords: documentation,introspection,gobject,gtk
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Natural Language :: English
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: BSD
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Desktop Environment :: Gnome
Classifier: Topic :: Software Development :: Documentation
Requires-Python: >=3.6.0
Description-Content-Type: text/markdown
License-File: LICENSES/Apache-2.0.txt
License-File: LICENSES/GPL-3.0-or-later.txt
Requires-Dist: Markdown>=3.2
Requires-Dist: MarkupSafe
Requires-Dist: Pygments
Requires-Dist: jinja2
Requires-Dist: packaging
Requires-Dist: tomli; python_version < "3.11"
Requires-Dist: typogrify
Dynamic: license-file

GI-DocGen: Documentation tool for GObject-based libraries
-------------------------------------------------------------------------------

GI-DocGen is a document generator for GObject-based libraries. GObject is
the base type system of the GNOME project. GI-Docgen reuses the
introspection data generated by GObject-based libraries to generate the API
reference of these libraries, as well as other ancillary documentation.

## Installation

### Running GI-DocGen uninstalled

You can run GI-DocGen from its repository, by calling:

```
./gi-docgen.py
```

GI-DocGen will automatically detect this case.

### Installing GI-DocGen via pip

To install GI-DocGen, you will need to have the following pieces of software
available on your computer:

 - Python 3.6, or later
 - pip

Run the following command:

```
pip3 install --user gi-docgen
```

After running the command above, make sure to have the `~/.local/bin`
directory listed in your `$PATH` environment variable.

To update GI-DocGen, run the following command:

```
pip3 install --user --upgrade gi-docgen
```

## Usage

First, read [the GI-DocGen tutorial](https://gnome.pages.gitlab.gnome.org/gi-docgen/tutorial.html).

The documentation for GI-DocGen is [available online](https://gnome.pages.gitlab.gnome.org/gi-docgen/).

The `examples` directory in the repository contains simple project files for
various GNOME libraries.

## Disclaimer

GI-DocGen is **not** a general purpose documentation tool for C libraries.

While GI-DocGen can be used to generate API references for most GObject/C
libraries that expose introspection data, its main goal is to generate the
reference for GTK and its immediate dependencies. Any and all attempts at
making this tool more generic, or to cover more use cases, will be weighted
heavily against its primary goal.

GI-DocGen is still in development. The recommended use of GI-DocGen is to
add it as a sub-project to your [Meson build system](https://mesonbuild.com),
and vendor it when releasing dist archives.

You should **not** depend on a system-wide installation until GI-DocGen is
declared stable.

If you need a general purpose documentation tool, I strongly recommend:

 - [HotDoc](https://hotdoc.github.io/)
 - [Doxygen](https://www.doxygen.nl/index.html)
 - [GTK-Doc](https://gitlab.gnome.org/GNOME/gtk-doc/)

## Copyright and Licensing terms

Copyright 2021  GNOME Foundation

GI-DocGen is released under the terms of the Apache License, version 2.0, or
under the terms of the GNU General Public License, either version 3.0 or,
at your option, any later version.
