pyproject.toml

The pyproject.toml is a standardized file for python projects, which contains critical metadata about your app and its dependencies.

The file contains:

  • Basic application info (e.g. name, version, description)

  • Dependencies, which are managed automatically by uv

  • The import path for your app’s App instance.

  • Settings for various development tools (e.g. linters and formatters)

Here’s an example for a first app:

[project]
name = "my_first_app"
version = "0.0.1"
description = "My first app"
license = "Apache-2.0"
requires-python = ">=3.9,<3.14"
authors = [ "Me", "Myself", "I" ]
dependencies = [
    "splunk-soar-sdk",
]

[tool.soar.app]
main_module = "src.app:app"

### YOU SHOULD NOT NEED TO TOUCH ANYTHING BELOW THIS LINE ###

In general, you should only have to edit entries under the [project] section. If you need to add dependencies, use the uv CLI tool to do so (with uv add).