Getting Started
Using the command line interface
Once Apydia is installed, you will need a project to generate API documentation for. I you don't have one and still want to try out Apydia, you can generate Apydia's API docs to have a quick peek.
The fastest way to get started is to use the apydia command line tool, like this:
apydia -o {module}
This will create API reference documentation for a given module and its descendants and open the root module's page in your system's default web browser.
apydia --help
This will dump a list of availlable options:
Usage: apydia [options] [modules]
Apydia API Documentation Generator
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-c CONFIGFILE, --config=CONFIGFILE
specify config file
-d DESTINATION, --destination=DESTINATION
specify output directory
-o, --open open in browser
-f FORMAT, --format=FORMAT
rendering format (xhtml or html,
defaults to xhtml)
-s THEME, --style=THEME
Choose a theme
-p DOCFORMAT, --parser=DOCFORMAT
docstring parser (markdown, textile,
restructuredtext, html, ...)
-b TRAC_BROWSER_URL, --trac-browser-url=TRAC_BROWSER_URL
trac browser url (path to root module)
-q, --quiet silent mode
-t TITLE, --title=TITLE
title of project
-x EXCLUDE_MODULES, --exclude-modules=EXCLUDE_MODULES
exclude modules
For example, to generate Apydia's own API documentation using its own theme, which you can see on this website, simply make sure you have the markdown-module installed and type:
apydia -o -s apydia apydia
Or, if you have Elixir installed, try the following - the Elixir-theme is bundled with Apydia for demonstration purposes, but you need to have docutils installed for this one):
apydia -o -s elixir -p restructuredtext elixir
By default documentation for all submodules will be generated, which might not be suitable in all situations. You can exclude specific modules using the -x option, like so:
apydia -o -s elixir -p restructuredtext -x elixir.statements elixir
If you need to exclude more than one module, simply add multiple -x options.
Using a configuration file
Typing all those commandline options over and over might possibly become annoying at some point. You can create some .ini-file and put all of the options in there:
[apydia]
title = Elixir
destination = apidocs
theme = elixir
docformat = reStructuredText
modules = elixir, elixir.ext.associable, elixir.ext.versioned,
elixir.ext.encrypted
exclude_modules = elixir.statements
trac_browser_url =
http://elixir.ematia.de/trac/browser/elixir/tags/0.4.0/elixir
Then hand it over to Apydia (assuming the filename is elixir.ini, you can of course call it whatever you like):
apydia -c elixir.ini
Integration with distutils
This is the recommended way of using Apydia, especially if your project makes use of distutils. All you have to do to make it work is to modify or create the setup.cfg file of your project (the file sould reside in the same directory like setup.py) and append lines like these:
[apydia] title = My Example Project theme = default docformat = Markdown modules = myproject exclude_modules = myproject.somemodule, myproject.someother trac_browser_url = http://myproject.tld/trac/browser/trunk
Now you can always generate your API reference by issuing from your project's root:
python setup.py apydia
That's it. Maybe you want to create custom themes to nicely fit your project's homepage. To see how you can accomplish this have a look at the bundled "apydia" and "elixir" themes.

