Código abierto · Angular 22 · MIT
Componentes de UI, innecesariamente bien hechos.
Needless UI da estilo a elementos nativos con una sola hoja de estilos independiente del framework y tokens de diseño W3C. Sus directivas de Angular añaden el comportamiento de Angular Aria, así que todos los componentes son accesibles desde el primer renderizado.
Por qué existe
Elementos nativos ante todo
<button nuiButton>es un botón de verdad. Los formularios, el teclado y los lectores de pantalla funcionan porque no hay nada que lo envuelva.Una hoja de estilos, cualquier framework
Los componentes son CSS puro en capas de cascada: Angular hoy, React después y HTML simple siempre.
Tu CSS siempre gana
Todo va dentro de
@layer nui, así que tus propios estilos lo sobrescriben sin!importantni guerras de especificidad.Accesible por diseño
Al generar la paleta, cada par de colores se comprueba según las WCAG 2.2 AA. El foco, los colores forzados y el movimiento reducido ya vienen resueltos.
Innecesariamente personalizable
Resortes, efectos al pulsar, animaciones de entrada, formas de esquina, radio y densidad: un atributo para toda la aplicación o un input por componente, sobre tokens de diseño W3C estándar.
Angular moderno
Signal inputs, zoneless, renderizado en el servidor y un punto de entrada por componente, para que las aplicaciones solo incluyan lo que importan.
Dos imports y listo
Añade el paquete, importa la hoja de estilos una sola vez y usa los componentes en cualquier componente standalone.
pnpm add @needless-ui/angular @angular/aria @angular/cdkimport { Component } from '@angular/core';
import { NuiButton } from '@needless-ui/angular/button';
@Component({
selector: 'app-root',
imports: [NuiButton],
template: `<button nuiButton (click)="save()">Save changes</button>`,
})
export class App {
save() {}
}