Domino Brix is a lightweight MVP framework for DominoKit apps. It combines routing, presenters, slots, events, startup tasks, and security into a cohesive runtime with generated presenters, views, and initializers.
Add the runtime and processor to your project (processor as provided for client builds):
<!-- pom.xml -->
<dependency>
<groupId>org.dominokit</groupId>
<artifactId>domino-brix-client</artifactId>
<version>${brix.version}</version>
</dependency>
<dependency>
<groupId>org.dominokit</groupId>
<artifactId>domino-brix-processor</artifactId>
<version>${brix.version}</version>
<scope>provided</scope>
</dependency>
Initialize configuration, then start the router and startup tasks. The generated presenters and views are discovered automatically.
Map<String, String> config = Map.of("apiBase", "/api");
Brix.get().init(config);
Brix.get().start(Set.of(/* startup tasks */), () -> DomGlobal.console.info("Ready"));
// navigate
Brix.get().router().pushToken("dashboard");