Skip to main content

Config

entry

[ str, default: "app" ]

Indicates the name of the main file.

note

It is OK to use app / app.py / ./app.py, so you can safely use the Tab completion of your shell.

frontend_port

[ str, default: "5123" ]

The port of the frontend, will take no effect if --unified mode is used.

backend_port

[ str, default: "8123" ]

The port of the backend, will also be the port of the frontend if --unified mode is used.

backend_hosting_url

[ str, default: None ]

If provided, the frontend will post requests to this url.

upload_root

[ str, default: "~/.cache/carefree-draw" ]

The root folder where your uploaded stuffs will be stored.

board_settings

[ BoardSettings, default: BoardSettings() ]

The overall settings of the drawboard 🎨.

cfdraw/schema/settings.py
class BoardSettings(BaseModel):
boardOptions: Optional[BoardOptions] = Field(None, description="board options")
globalSettings: Optional[GlobalSettings] = Field(None, description="global setting")

BoardOptions

  • minScale

    [ float, default: 0.02 ]

    Specify the minimum global scale of the drawboard.

  • maxScale

    [ float, default: 256 ]

    Specify the maximum global scale of the drawboard.

GlobalSettings

  • defaultLang

    [ noli.Lang, default: None ]

    The default language.

  • defaultInfoTimeout

    [ int, default: None ]

    The default timeout of the info message.

  • excludeReactPlugins

    [ List[ReactPluginType], default: None ]

    React plugins to be excluded.

  • iconLoadingPatience

    [ int, default: None ]

    Show icon loading animation if the icon is not loaded after {patience} ms.

extra_plugins

[ ExtraPlugins, default: ExtraPlugins() ]

Extra plugins to be loaded.

cfdraw/schema/settings.py
class ExtraPlugins(BaseModel):
logo: Optional[ILogoSettings] = Field(None, description="logo settings")
info
  • ILogoSettings is just an inheritance of IPluginSettings, but without the need to specify w & h. If it is provided, we will render a logo based on the settings.

use_react_strict_mode

[ bool, default: False ]

Whether use React.StrictMode or not.

note

If not for special purposes, just leave it as False.