Customize the app#

The atoti-plus plugin is required to follow this how to.

There are two ways to customize the app served by a session:

  • The branding (e.g. logo, favicon, tab title) can be changed by instantiating the session with a custom BrandingConfig.

  • The features can be enhanced by instantiating the session with one or more app extensions.

Branding#

Here is an example:

[1]:
import atoti as tt
from pathlib import Path

RESOURCES_DIRECTORY = Path("resources")
branding_config = tt.BrandingConfig(
    favicon=RESOURCES_DIRECTORY / "favicon.ico",
    logo=RESOURCES_DIRECTORY / "logo.svg",
    title="Hey hey hey",
)
session = tt.Session(branding=branding_config, name="Rebranded")

The app of this session looks like this:

Rebranded app

App extensions#

App extensions can change the behavior of the app or augment it with new features. App extensions are developed in JavaScript/TypeScript.

The atoti-plus plugin comes with existing app extensions that can be easily enabled. For instance:

[2]:
from atoti_plus import ADVANCED_APP_EXTENSION

session = tt.Session(app_extensions=dict([ADVANCED_APP_EXTENSION]), name="Extended")

This extension will add some drawers (in the left sidebar) and a Text editor widget:

Extended app

Take a look at the documentation of Session()'s app_extensions parameter to learn how to create your own extensions.