u/Weak-Palpitation907

Building TailNG: Angular-only, signal-first components for our own projects (open source)

We started TailNG mainly for our own Angular projects.

Initially, the idea was simple: create some wrapper components on top of \@angular/aria``. But once we needed more complete components similar to Angular Material, we slowly started building our own components with the help of AI tools.

We are already using these components in one of our projects and fixing the gaps we face while using them as developers.

The current direction is:

  • Angular-only
  • Signal-first
  • Mostly targeting Angular 21+
  • Accessible primitives/components
  • Easy to customize
  • Useful for normal apps as well as dynamic UI rendering

One thing we are also experimenting with is generating UI from JSON at the client side.

We had built a POC where an AI chat window can be added to an existing (angular) app, and users can perform tasks by chatting. But generating dynamic HTML directly through AI feels slow. So we are trying to make these components usable in that kind of JSON-driven UI scenario too, without affecting performance.

Still early, but sharing here to get feedback from Angular developers.

https://tailng.dev
https://github.com/tailng/tailng-ui

reddit.com
u/Weak-Palpitation907 — 4 days ago

I noticed a difference in scroll behavior between Angular Material overlay components.

For mat-autocomplete, when the panel is open, I can still scroll the page, and the autocomplete overlay moves along with the input field.

But for components like mat-select, mat-datepicker, and mat-menu, once the overlay is open, page scrolling is blocked or prevented.

I understand that all of these use Angular CDK Overlay internally, but their scroll behavior seems different.

Is this intentional?
Is it because different components use different CDK scroll strategies, such as reposition, block, or close?

I am trying to understand the design reason behind this difference, especially from a UX/accessibility perspective.

Also, if I am building my own custom Angular overlay components, should autocomplete-like components use reposition-on-scroll, while menu/select/datepicker-like components block scrolling?

Would appreciate any explanation or references to the relevant Angular CDK/Material behavior.

reddit.com
u/Weak-Palpitation907 — 20 days ago