betty.server module

The web server API.

class betty.server.Server

Bases: ABC

A web server.

__init__(*, user: User)
final async assert_available() None

Assert that this server is available.

abstract property public_url: str

The server’s public URL.

async show() None

Show the served site to the user.

abstractmethod async start() None

Start the server.

abstractmethod async stop() None

Stop the server.

final class betty.server.ServerDefinition

Bases: HumanFacingDefinition, OrderedPluginClsDefinition[Server]

The server plugin type.

Plugin type ID

server

Definition

@ServerDefinition(...)

Built-in servers:

builtin (ProjectBuiltinServer)
Built-in: Serve your site using Python's built-in web server. This is for local use only, and unsafe for publishing your site.

A project server plugin definition.

__init__(plugin_id: ResolvableMachineName, *, label: ResolvableLocalizable, after: Order[ServerDefinition] = (), auto: bool = False, before: Order[ServerDefinition] = (), description: ResolvableLocalizable | None = None, requires: Requires = ())
static type() PluginTypeDefinition[Self]

The plugin type definition.

exception betty.server.ServerNotStarted

Bases: RuntimeError

Raised when a web server has not (fully) started yet.