Documentation Build Status Others
Stable Dev Build Status Build Status Build Status pipeline status Coverage GitHub license Code Style: Blue

The code is hosted on GitHub, with some continuous integration services to test its validity.

This repository is created and maintained by @singularitti. You are very welcome to contribute.

Please cite this package as:

Q. Zhang, C. Gu, J. Zhuang et al., express: extensible, high-level workflows for swifter ab initio materials modeling, Computer Physics Communications, 108515, doi:

The BibTeX format is:

  title    = {express: extensible, high-level workflows for swifter ab initio materials modeling},
  journal  = {Computer Physics Communications},
  pages    = {108515},
  year     = {2022},
  issn     = {0010-4655},
  doi      = {},
  url      = {},
  author   = {Qi Zhang and Chaoxuan Gu and Jingyi Zhuang and Renata M. Wentzcovitch},
  keywords = {automation, workflow, high-level, high-throughput, data lineage}

We also have an arXiv prepint.


The package can be installed with the Julia package manager. From the Julia REPL, type ] to enter the Pkg REPL mode and run:

pkg> add ExpressCommands

Or, equivalently, via the Pkg API:

julia> import Pkg; Pkg.add("ExpressCommands")

Command Line Interface

Add ~/.julia/bin to your PATH to enable command line interface. Or run ExpressCommands.comonicon_install_path() to install everything automatically.

Sometimes, you won't trigger the package build of Julia. You can install the command line interface manually via ExpressCommands.comonicon_install().


If you are using ZSH, you can enable the auto-completion by ExpressCommands.comonicon_install_path(). Or add the FPATH to your .zshrc

export FPATH="$HOME/.julia/completions:$FPATH"

if you do not have oh-my-zsh installed, you need to add

autoload -Uz compinit && compinit

to your .zshrc as well.


  • STABLEdocumentation of the most recently tagged version.
  • DEVdocumentation of the in-development version.

Project status

The package is tested against, and being developed for, Julia 1.6 and above on Linux, macOS, and Windows.

Questions and contributions

Usage questions can be posted on our discussion page.

Contributions are very welcome, as are feature requests and suggestions. Please open an issue if you encounter any problems. The contributing page has a few guidelines that should be followed when opening pull requests and contributing code.