Skip to main content


New in v13.2.0

The viktor.config.toml file is used to set configuration settings for your app, and is placed on the top-level of the application folder:

├── requirements.txt
└── viktor.config.toml

The viktor.config.toml file is written in TOML language, which is very similar to basic Python syntax.


Changed in v13.3.0

The entry app_type has become obligatory.

The app_type entry in the viktor.config.toml file defines the type of app. App layout, requirements and corresponding feedback errors might differ depending on the chosen app type. Currently, the following types are available:

  • editor: allows for 1 (and only 1) entity type, of which the user can only edit a single entity. The entity is not shared among multiple users (i.e. every user works in a unique session).
  • simple: allows for 1 (and only 1) entity type, of which the user can make unlimited entities. Entities are shared among multiple users.
  • tree: no restriction on the number of entity types. An entity type hierarchy can be created by defining children on the parent entity type controller. Entities are shared among multiple users.
app_type = 'simple'  # 'editor' | 'simple' | 'tree'

More information on these app types and tutorials can be found here.


New in v14.3.0

Defines the directory where assets (e.g. images) are stored. These assets can be used as, for example, static images.

assets_path = 'assets'


With the enable_privileged_api key, the application code is able to bypass user access restrictions:

enable_privileged_api = true  # true | false


Any system dependency that is not a Python package can be listed here. System packages will be installed when the application is built and should be apt-get compatible:

packages = [



This Python version does not affect the Python version that is used for development with venv as isolation mode, which is specified using the configure command instead!

Specify the Python version to publish the application with:

python_version = '3.12'  # '3.9' | '3.10' | '3.11' | '3.12'



Supported for app_type = 'tree' only

A welcome text can be customized, which will be shown to the user upon entering the application dashboard. The value is a path pointing to a file located relative to viktor.config.toml. The file supports styling with Markdown:

welcome_text = ""


## Welcome to your very first [VIKTOR]( application!

Get started engineering the **awesome** today

While automating the *boring*!


Specify the app name you want to publish on. This value will be overwritten if the registered-name flag is specified in viktor-cli command such below:

viktor-cli publish --registered-name my-first-app