xxf-refreshable

Manage pull-to-refresh, load more, and refresh states in iOS list screens.

6|1|Updated May 22, 2025
One-click install
npx skills add https://github.com/NBXXF/xxf_ios --skill xxf-refreshable
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: xxf-refreshable
Source: https://github.com/NBXXF/xxf_ios/tree/main/skills/xxf-refreshable
Command: npx skills add https://github.com/NBXXF/xxf_ios --skill xxf-refreshable

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Pull-to-refresh and pagination are common UI patterns in list screens, but implementing robust state handling, debouncing, and integration with reactive flows can be tedious. XXFRefreshable provides a ready-made state machine to manage idle, refreshing, loading more, and success/error transitions, reducing boilerplate and improving UX.

Core Features & Use Cases

  • Pull-to-refresh and load more with a cohesive state machine
  • Reactive integration with XXFFlow to emit refresh events
  • Clear separation of UI logic from data layer for clean architecture
  • Use case: implement a dashboard list with pull-to-refresh and infinite scroll that gracefully handles empty and error states

Quick Start

Integrate XXFRefreshable into your list view and drive refresh states from your view model.

Frequently Asked Questions about xxf-refreshable

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

FAQPage Schema
How do I manage pull-to-refresh state transitions in an iOS list view?

Pull-to-refresh state transitions in iOS are managed by implementing a state machine that handles idle, refreshing, loading more, and success or error states. This approach reduces boilerplate by clearly separating UI logic from the data layer for clean architecture.

What is the best way to handle infinite scroll and pagination errors in iOS reactive flows?

Handling infinite scroll and pagination errors in iOS reactive flows requires integrating a state machine to drive UI updates. This setup emits refresh events reactively, allowing the list view to gracefully handle empty states and error transitions during pagination.

How do I integrate a reactive flow to emit refresh events for a dashboard list?

To integrate a reactive flow to emit refresh events, drive the refresh states from your view model and connect the list view to the reactive flow. This configuration manages debouncing and state transitions, ensuring smooth refresh flows across the mobile app.

Does this pull-to-refresh state machine work with existing iOS list-based UI patterns?

Yes, this pull-to-refresh state machine applies to list-based UIs across mobile apps. It requires integration with the project's reactive flow to manage pagination and error or empty states, fitting smoothly into existing iOS list-based UI patterns.

Why does my iOS pull-to-refresh logic need a dedicated state machine?

Your iOS pull-to-refresh logic needs a dedicated state machine because implementing robust state handling, debouncing, and reactive flow integration manually is tedious. A state machine defines clear idle, refreshing, and loading transitions, reducing boilerplate and improving UX.