Juliacon 2024

SummaryTables: Publication-ready tables in docx HTML LaTeX Typst
2024-07-12 , If (1.1)

At PumasAI, we create a lot of tables. No existing package could deliver minimalistic, aesthetic, flexible tables with the same look across docx, HTML, LaTeX and Typst formats. So we wrote our own! This talk introduces SummaryTables.jl, showcasing its included pharma-focused table functions and options to create your own formats. We'll also take a brief look at WriteDocx.jl, another new package which allows to create docx files from scratch in Julia (and put SummaryTables tables into them!).


The workflows of many pharma companies we work with at PumasAI involve creating reports in a mixture of formats: HTML, pdf via LaTeX and Typst, or docx files which are often the easiest way to quickly edit together the assets our users need at any given moment.

While general-purpose tools like pandoc allow targetting many output formats, including HTML, pdf and docx, style information is usually lost in translation. This was not good enough for our purposes, we wanted a tool to create our tables with the same look across all formats. This requirement also prompted the development of WriteDocx.jl, which through its detailed mapping of the actual docx XML spec, allows creating docx files with much higher precision than using a generic conversion tool.

The other purpose of SummaryTables.jl is to offer a collection of statistical table formats that are commonly found in pharma-related workflows. Currently, we have implemented listing tables, parameter summary tables and what's commonly called a "table 1" in our field.

With the open-sourcing of SummaryTables.jl and WriteDocx.jl, we want to contribute back to the Julia ecosystem and strengthen its arsenal of utility packages which are useful in the pharma world and beyond.

Product Engineer at Pumas AI
Co-author and co-maintainer of Makie.jl
Creator of packages like Chain.jl, DataFrameMacros.jl and ReadableRegex.jl

This speaker also appears in: