add-debounce

Debounce Cubit or Bloc method calls with per-key timers and configurable durations.

7|Updated Jan 27, 2026
One-click install
npx skills add https://github.com/marcglasberg/bloc_superpowers --skill add-debounce
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-debounce
Source: https://github.com/marcglasberg/bloc_superpowers/tree/main/.claude/skills/add-debounce
Command: npx skills add https://github.com/marcglasberg/bloc_superpowers --skill add-debounce

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Debounce delays method execution until after a period of inactivity, preventing rapid successive calls and reducing unnecessary work in UI flows such as search and validation.

Core Features & Use Cases

  • Debounces rapid calls to mix() so only the final action runs after a pause.
  • Supports per-key or per-parameter debouncing to isolate independent input streams.
  • Helps improve perceived performance in search, validation, or auto-save scenarios.

Quick Start

Attach debounce to a Cubit method by adding debounce(duration: 300.millis) to the mix call.

Frequently Asked Questions about add-debounce

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debounce validation calls in Flutter Cubit while typing?

Yes, you can debounce validation calls in a Flutter Cubit by adding debounce(duration: 300.millis) to your mix() call, which delays execution until user input pauses and prevents rapid successive calls during typing.

What does per-key debouncing do for Flutter form inputs?

Per-key debouncing isolates independent input streams by applying separate timers to each parameter. This ensures that rapid typing in one field does not interfere with or delay validation and auto-save actions in another.

Can I use debounce with Bloc interactions for auto-save scenarios?

Yes, you can use debounce with Bloc interactions for auto-save scenarios. It delays method execution until after a period of inactivity, ensuring only the final action runs after typing pauses and improving perceived performance.

How do I configure the debounce duration for a mix() call?

You configure the debounce duration by passing a duration parameter to the mix call, such as debounce(duration: 300.millis). This sets the inactivity period required before the delayed method execution fires.

Why should I delay method calls until user input settles in Flutter?

Delaying method calls until user input settles prevents rapid successive calls during typing, reducing unnecessary work in UI flows like search and validation. This improves perceived performance by only executing the final action after a pause.

Does debounce require any specific dependencies to work with Cubit?

No specific external dependencies are required. The debounce functionality integrates directly with Cubit or Bloc interactions and works natively with mix() calls to manage per-key or per-parameter timers.