
Domino-UI is a type-safe, fluent Java UI component library that compiles to JavaScript GWT. It lets Java teams build modern UIs without external JavaScript dependencies, while keeping IDE refactoring, static typing, and a consistent API across components.
Domino-UI code should read like the HTML structure while staying debuggable. The preferred style initializes complex children first, then composes the tree fluently.
TextBox userName = TextBox.create("User name")
.setRequired(true)
.setAutoValidation(true);
TextBox password = TextBox.password("Password")
.setRequired(true)
.setAutoValidation(true);
Button login = Button.create(Icons.lock_open())
.setBackground(Color.THEME)
.setContent("Login")
.block();
Card.create("LOGIN")
.appendChild(userName)
.appendChild(password)
.appendChild(login);
Domino UI provides scoped, composable CSS: color modes, visual identities, accents, density, character and surface themes, contextual colors, component emphasis, custom tokens, and runtime Dynamic CSS utilities. The complete styling and theming guide explains the design choices, stylesheet delivery options, Java APIs, accessibility guidance, customization recipes, and production optimization choices.