&gt; the ini-file configuration seems a bit strange to me(esp since it seems to be ini-files that occasionally contain python code). Why did you go with them instead of making these python classes? To allow the GUI to edit parts of them as well?<p>I grew to heavily dislike the idea of just executing random code to configure things.  Impossible to expose to tools, even harder to reason about it.  Note that these files do not contain python code at all.  They just sometimes contain little Jinja templates.<p>The idea is indeed that the GUI can eventually edit some of these things.  It also is already used for `lektor plugins add` for instance which updates the project ini file.<p>Lastly the reason ini over yaml is purely that this can preserve comments and doing the same for yaml is a lot more work i did not have time for :)