A Document Processor for Scientific Articles

LaTeX is one of the predominant document preparation systems for scientific articles. While very expressive, LaTeX documents tend to be verbose, fragile, and difficult to author.

In contrast, Madoko is an extension to Markdown with css like support for custom styling and bibtex like support for citation. Since it generates LaTeX files, Madoko can serve as an alternative to writing LaTeX by hand. In fact, most of our publications are authored using Madoko (for instance, this paper).

While Madoko represents a big step forward from authoring LaTeX documents, it was designed to generate both HTML documents as well as PDF documents. This requirement resulted in a few trade-offs with respect to scientific PDF authoring that could be improved.

Your Task

Based on the current state-of-art of Madoko and LaTeX, you will design and implement a document preparation system that:

  • will take a Markdown like language as input,
  • generates conference-template compliant LaTeX code,
  • includes a preprocessor to conveniently author mathematical formulas.


  • Interest in designing and implementing a mid- to large-scale software artifact
  • Experience in LaTeX
  • Interest in learning new programming languages and studying existing source code


  • You will learn a few interesting, cutting edge programming languages
  • You will be able to design your own document authoring language
  • Ideally, if your design and implementation is successful, we will consider using your system to author our papers in the future.


Jonathan Brachthäuser