Anise

one software project administration tool for all environments

one software project administration tool for all environments

Many software developers need to cope with a bunch of different large and tiny tools for completing their day-to-day business. Developers working on different projects, living in different software development ecosystems, building on different software frameworks are even more confronted with that issue. Typical tasks can be:

generating documentation

creating packages

handling version information

e.g. print it in the manual

creating a homepage automatically built from the available version information, the packages, the documentation and so on

deploying this homepage to a web server

testing

...

The anise engine executes arbitrary Python source code and provides some additional services like logging, parameter passing from command line, basic graphical user interface support, a plugin interface, a flexible event system, injecting code and data from other place, and more.

On top of this engine, anise comes with a bunch of implementations which fulfill tasks (or parts of them) of software development. There is a testing module, a documentation- and homepage-generator, some package building methods and a lot more. The implementations use the event system in many places in order to allow customization in a somewhat technical but very flexible way.

The anise framework allows you to implement all those tasks in a structured but generic way in a combination of XML and Python code. Once you have created this stuff at a defined place in your project, anise lets you easily execute your tasks from command line (or from any editor if you embed it somehow).