Angular Undo Redo History Store | ng-hub-ui-history

Angular undo and redo history store with Signals-friendly APIs, transactions, limits and reactive form support.

Overview

Why teams search for this library

Use this Angular history store when you need undo and redo on complex state without introducing a full external state library.

Install

npm install ng-hub-ui-history

Jump to

Ideal for

  • editors
  • form builders
  • low-code tools
  • configuration UIs

About history

ng-hub-ui-history is especially useful in Angular editors, form builders and configuration screens where the user expects to go backwards safely. It brings undo and redo patterns to stateful workflows without forcing a heavyweight architecture decision.

Feature guides

Manual Commits and Time Travel

Track state changes and travel backwards/forwards through linear history.

Examples:
Basic History

Manual commit, undo and redo.

Live preview is not available for this example yet.

Code

Nested Objects and Arrays

Use patch-based tracking for deep object graphs and list mutations.

Examples:
Nested Object History

Nested properties and dynamic list updates.

Live preview is not available for this example yet.

Code

Automatic Form Tracking

Auto-commit form value changes with built-in watch helpers.

Examples:
Reactive Form Watch

watchForm() for automatic commits from FormGroup.

Live preview is not available for this example yet.

Code

Transactions and Retention

Group multiple operations into one entry and trim old entries by configured limits.

Examples:
Transactions + Limits

Consolidated commits and FIFO retention.

Live preview is not available for this example yet.

Code

Key features

Undo and redo flows

Restore previous state snapshots in Angular tools where edits happen continuously.

Good for builders and editors

A strong fit for low-code products, dynamic forms and configuration-heavy experiences.

Signals-friendly state updates

Keep Angular reactivity predictable while still giving users revision history.

Recent changes

Version 0.1.0 - 2/23/26, 12:00 AM

added: Initial release with multi-object linear history.

added: Undo/redo, transactions, and maxEntries/maxBytes retention limits.

added: Reactive Forms auto-commit integration via watchForm().