heroku/react-refetch

A simple, declarative, and composable way to fetch data for React components

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 1 hour ago
Added to GitGenius on September 20th, 2026
Created on November 11th, 2015
Open Issues & Pull Requests: 49 (+0)
GitHub issues: Enabled
Number of forks: 137
Total Stargazers: 3,398 (+0)
Total Subscribers: 113 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

React Refetch is a library that provides a simple, declarative, and composable way to fetch data for React components.

The library addresses the problem of data fetching in React applications by offering an alternative to two common approaches: using Redux or Flux to manage server data (which can over-complicate architecture for read-only data), or fetching data inside components and storing it in local state (which makes components unnecessarily stateful). React Refetch uses a decorator pattern inspired by react-redux, allowing developers to map component props to URLs and back to props. This keeps components stateless while describing data sources declaratively. The fetched data is represented as a PromiseState, a synchronous representation of the fetch Promise that is either pending, fulfilled, or rejected, making it straightforward to reason about fetch state during rendering. The tool supports advanced options including lazy loading, polling for new data, and posting data to the server.

React Refetch suits applications that are primarily fetching and rendering read-only data from a server, where Redux or Flux would add unnecessary complexity. It works best for developers who want to keep their components stateless and prefer declarative data source definitions over imperative fetching logic. The library requires React 0.14 or later and depends on ES6 features including Object.assign, Promise, fetch, and Array.prototype.find, so polyfills may be necessary depending on target browser support.

The project shows minimal ongoing development activity, with no recent commits or active maintenance indicated in the repository.