Skip to content

Application

App factory, lifespan hook, and top-level wiring. This is the composition root where devices, adapters, and settings come together.

gas2mqtt.main

gas2mqtt application entry point.

Wires the cosalette App with all devices, adapters, and settings. The module-level app object is the entry point for the CLI: gas2mqtt runs app.run().

app module-attribute

app = App(
    name="gas2mqtt",
    version=__version__,
    description="Domestic gas meter reader via QMC5883L magnetometer",
    settings_class=Gas2MqttSettings,
    store=_store,
    adapters={
        MagnetometerPort: (
            Qmc5883lAdapter,
            FakeMagnetometer,
        )
    },
)

Module-level app instance — entry point for the CLI.