atoti.SessionConfig#

final class atoti.SessionConfig#

The config passed to atoti.Session.start().

ai: AiConfig | None = None#
app_extensions: Mapping[str, Path] = frozendict({})#

Mapping from the name of an Atoti UI extension (i.e. name property in their package.json) to the path of its dist directory.

Note

This feature is not part of the community edition: it needs to be unlocked.

If the dist directory contains development and production folders, the build mode will be picked depending on the value of __debug__. See deployment setup.

Atoti UI extensions can enhance the app in many ways such as:

  • Adding new widget plugins.

  • Attaching custom menu items or titlebar buttons to a set of widgets.

  • Providing other React contexts to the components rendered by the app.

See also

Prebuilt extensions in atoti.app_extension.

branding: BrandingConfig | None = None#
extra_jars: Sequence[Path] = ()#

Paths of JARs to add to the classpath of the Java subprocess.

i18n: I18nConfig | None = None#
java_options: Sequence[str] = ()#

Additional options to pass when starting the Java subprocess (e.g. for optimization or debugging purposes).

In particular, the -Xmx option can be set to increase the amount of RAM that the session can use. If this option is not specified, the JVM default memory setting is used which is 25% of the machine memory.

Warning

These options are passed as is to the Java subprocess with no guarantee that the Session will behave as expected. Options that work with one version of Atoti Python SDK may break with another, even across a bugfix release.

logging: LoggingConfig | None = None#
observability: ObservabilityConfig | None = None#

The observability config for the session.

When set, the server_service_name attribute controls the otel.service.name Java system property of the server subprocess.

port: int = 0#

Port on which the session will listen to.

If 0, the OS will pick an available port.

ready: bool = True#

Initial value of atoti.Session.ready.

security: SecurityConfig | None = None#
user_content_storage: Path | UserContentStorageConfig | None = None#

Config controlling how user content is stored.

If a Path is given, the content will be stored in the corresponding directory. If None, the content will be stored in memory and will be lost when the session is closed.