Noora web components
Noora is now available as standards-based web components. They share the design tokens, visual language, and component behavior used by Noora’s Phoenix LiveView components, while remaining usable from plain Hypertext Markup Language or any browser framework.
Install @tuist/noora from the Node Package Manager package registry, then import the design tokens and component registration bundle once in your browser entry point:
import "@tuist/noora/tokens.css";
import "@tuist/noora/web-components";
For a quick browser-only prototype, a content delivery network such as jsDelivr can serve the same published files directly from the Node Package Manager package:
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/@tuist/noora@latest/priv/static/tokens.css"
/>
<script
type="module"
src="https://cdn.jsdelivr.net/npm/@tuist/noora@latest/priv/static/noora-web-components.js"
></script>
The @latest addresses are convenient for prototypes. Pin an exact published version when using Noora in production.
You can then use Noora custom elements directly:
<noora-button variant="primary">Create project</noora-button>
Interactive components use standard browser events where they fit and documented noora-* custom events for structured interactions. For example:
document.querySelector("noora-select").addEventListener("noora-select", (event) => {
console.log(event.detail.value);
});
The package also includes TypeScript declarations, a Custom Elements Manifest, and generated reference documentation for attributes, properties, slots, styling parts, and events.