atoti.SessionConfig#

final class atoti.SessionConfig#

Config passed to atoti.Session.start().

app_extensions: Mapping[str, Path] = {}#

Mapping from the name of an 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.

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.

The app extension template can be used as a starting point.

See also

Available extensions in atoti.app_extension.

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

The paths of the JARs to add to the classpath of the Java subprocess.

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

The 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.

logging: LoggingConfig | None = None#
port: int = 0#

The port on which the session will listen to.

If 0, the OS will pick an available port.

ready: bool = True#

The initial value of atoti.Session.ready.

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

The 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.