Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/toss/suspensive

All in one for React Suspense
https://github.com/toss/suspensive

async errorboundary react react-query ssr suspense suspensive

Last synced: 3 days ago
JSON representation

All in one for React Suspense

Awesome Lists containing this project

README

        



Suspensive Libraries Logo - TypeScript/JavaScript packages to use React Suspense easily.

Suspensive



Manage asynchronous operations, timing, error handling, detecting intersection of elements, and caching easily


[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?color=green&labelColor=#5D5D5D)](https://github.com/toss/suspensive/blob/main/LICENSE) [![Coauthors friendly](https://img.shields.io/badge/coauthors-friendly-blue.svg?logo=data:image/svg%2bxml;base64,PHN2ZyB3aWR0aD0iMTU2IiBoZWlnaHQ9IjEzNCIgdmlld0JveD0iMCAwIDE1NiAxMzQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMjAuNDEzIDc1LjU2MjVWNTcuMkgxMDIuMDVWMzkuOTc1SDEyMC40MTNWMjEuNzc1SDEzNy42MzhWMzkuOTc1SDE1NS44MzhWNTcuMkgxMzcuNjM4Vjc1LjU2MjVIMTIwLjQxM1pNNTkuNTAwOCA2NS40ODc1QzUwLjI3NTMgNjUuNDg3NSA0Mi40OTM4IDYyLjI5MTcgMzYuMTU2MyA1NS45QzI5LjgxODggNDkuNTA4MyAyNi42NSA0MS43MzU0IDI2LjY1IDMyLjU4MTNDMjYuNjUgMjMuNDI3MSAyOS44MTAxIDE1LjcwODMgMzYuMTMwNCA5LjQyNUM0Mi40NTA2IDMuMTQxNjcgNTAuMjIzNSAwIDU5LjQ0OTIgMEM2OC42NzQ3IDAgNzYuNDU2MyAzLjEzNTYgODIuNzkzOCA5LjQwNjhDODkuMTMxMyAxNS42Nzc5IDkyLjMgMjMuNDI5OCA5Mi4zIDMyLjY2MjVDOTIuMyA0MS43NjI1IDg5LjEzOTkgNDkuNTA4MyA4Mi44MTk2IDU1LjlDNzYuNDk5NCA2Mi4yOTE3IDY4LjcyNjUgNjUuNDg3NSA1OS41MDA4IDY1LjQ4NzVaTTAgMTMzLjA4OFYxMDcuMjVDMCAxMDIuMTgzIDEuMjg4NjMgOTcuNjA3NSAzLjg2NTg4IDkzLjUyNDFDNi40NDI4IDg5LjQ0MDYgOS44NjY2OCA4Ni4zMjQyIDE0LjEzNzUgODQuMTc1QzIxLjI4NzUgODAuNDkxNyAyOC42NjM2IDc3LjcyOTIgMzYuMjY1OCA3NS44ODc1QzQzLjg2OCA3NC4wNDU4IDUxLjU4ODkgNzMuMTI1IDU5LjQyODcgNzMuMTI1QzY3LjQ3NjIgNzMuMTI1IDc1LjI5MTcgNzQuMDQ1OCA4Mi44NzUgNzUuODg3NUM5MC40NTgzIDc3LjcyOTIgOTcuNzcwOCA4MC40Mzc1IDEwNC44MTMgODQuMDEyNUMxMDkuMDgzIDg2LjE0NTkgMTEyLjUwNyA4OS4yMzk0IDExNS4wODQgOTMuMjkzQzExNy42NjEgOTcuMzQ2NSAxMTguOTUgMTAxLjk5NiAxMTguOTUgMTA3LjI0MVYxMzMuMDg4SDBaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K)](https://coauthors.me) [![codecov](https://codecov.io/gh/toss/suspensive/graph/badge.svg?token=5PopssACmx)](https://codecov.io/gh/toss/suspensive) [![CodSpeed Badge](https://img.shields.io/endpoint?url=https://codspeed.io/badge.json)](https://codspeed.io/toss/suspensive) ![GitHub stars](https://img.shields.io/github/stars/toss/suspensive?style=social) [![Discord Badge](https://discord.com/api/guilds/1281071127052943361/widget.png?style=shield)](https://discord.gg/RFcR9WWmCH)


## Available Packages

### [@suspensive/react](https://suspensive.org/docs/react/motivation) [![npm version](https://img.shields.io/npm/v/@suspensive/react?color=000&labelColor=000&logo=npm&label=)](https://www.npmjs.com/package/@suspensive/react) [![npm](https://img.shields.io/npm/dm/@suspensive/react?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react) [![npm bundle size](https://img.shields.io/bundlephobia/minzip/@suspensive/react?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react)

> This package offers components that leverage React Suspense to handle asynchronous operations gracefully. It includes components like Suspense, ErrorBoundary, and ErrorBoundaryGroup, along with utilities like Delay for managing timing in your React applications.

Key features: Suspense, ErrorBoundary, ErrorBoundaryGroup, Delay, and more.

### [@suspensive/react-query](https://suspensive.org/docs/react-query/motivation) [![npm version](https://img.shields.io/npm/v/@suspensive/react-query?color=000&labelColor=000&logo=npm&label=)](https://www.npmjs.com/package/@suspensive/react-query) [![npm](https://img.shields.io/npm/dm/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query) [![npm bundle size](https://img.shields.io/bundlephobia/minzip/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query)

> This package enhances React Query with Suspense support, allowing for simpler and more declarative data fetching. It provides hooks like useSuspenseQuery and useSuspenseInfiniteQuery, which integrate seamlessly with React Suspense.

Key features: useSuspenseQuery, useSuspenseQueries, useSuspenseInfiniteQuery, queryOptions, Mutation, and more.

### [@suspensive/jotai](https://suspensive.org/docs/jotai/motivation) [![npm version](https://img.shields.io/npm/v/@suspensive/jotai?color=000&labelColor=000&logo=npm&label=)](https://www.npmjs.com/package/@suspensive/jotai) [![npm](https://img.shields.io/npm/dm/@suspensive/jotai?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/jotai) [![npm bundle size](https://img.shields.io/bundlephobia/minzip/@suspensive/jotai?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/jotai)

> This package builds on the Jotai state management library, adding features that work well with React Suspense. It provides utilities for managing state using atoms, which can be easily integrated into Suspense-based workflows.

Key features: Atom, AtomValue, SetAtom, and more.


## Visit [suspensive.org](https://suspensive.org) for docs, guides, API and more!

[English](https://suspensive.org/en) | [한국어](https://suspensive.org/ko)


## Contributors

Read our [Contributing Guide](./CONTRIBUTING.md) to familiarize yourself with Suspensive's development process, how to suggest bug fixes and improvements, and the steps for building and testing your changes.











Toss

MIT © Viva Republica, Inc. See [LICENSE](./LICENSE) for details.