Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more. Learn more →
Top 14 TypeScript Suspense Projects
-
For server-state (data fetched from an API), tools like React Query or SWR shine. They handle caching, refetching, and error states without needing to push API responses into Redux.
-
SurveyJS
JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor. Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.
-
-
-
-
-
-
react-fetching-library
Simple and powerful API client for react 👍 Use hooks or FACCs to fetch data in easy way. No dependencies! Just react under the hood.
-
Civic Auth
Auth in Less Than 5 Minutes. Civic Auth comes with multiple SSO options, optional embedded wallets, and user management — all implemented with just a few lines of code. Start building today.
-
Yeah, _we library maintainers_ are feeling the same way :)
- https://bsky.app/profile/acemarke.dev/post/3lcitbmmfss2i
Big picture as I understand it:
The legacy and always-undocumented-but-everyone-knew-about-it approach was throwing a promise while rendering.
`use` still actually does the same thing, but it also attaches some extra status fields to that promise, _and_ checks to see if you're consistently passing in the _same_ promise reference.
In other words, it's the job of an external data fetching library to keep track of what query entry is being asked for, create and save a promise per cache entry _outside_ of the React component tree, and then return that promise somehow so the app developer can pass it to the `use` hook. In a sense, it's an async `Map`.
As another example of this, my former teammate Brian Vaughn (previously on the React core team) ended up building his own implementation of that behavior in the conveniently-named `suspense` package:
- https://suspense.vercel.app/
Ultimately, the `use` hook and Suspense _does_ do exactly what you're asking for - the rest of the component gets to assume the data _does_ exist, since `use` will only let the execution continue once the promise has resolved.
-
-
-
-
React has a built-in React.lazy function to lazy load components. However, it may cause some issues when you are iterating fast. We crafted a tiny library called react-safe-lazy to solve the issues. It's a drop-in replacement for React.lazy and a detailed explanation can be found in this blog post.
-
ssr-react-monorepo-example
Example for React Server-Side Rendering (SSR) without any framework inside monorepo with Typescript and tests
-
react-fallback
A POC React component library for rendering skeleton states that automatically adapt to the shape of your UI layout while data is being fetched.
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
TypeScript Suspense discussion
TypeScript Suspense related posts
-
Ultrajs Docs
-
SWR VS rest-hooks - a user suggested alternative
2 projects | 5 Feb 2023 -
Nextjs 13 server components discussion
-
Why are data fetching libraries in the view layer so mainstream in React apps?
-
(React-Query ) Re-declaring useQuery() and all its options in multiple components?
-
Deno does React using npm
-
What would you recommend using for building a SPA (on Firebase) using Deno?
-
A note from our sponsor - SurveyJS
surveyjs.io | 16 May 2025
Index
What are some of the best open-source Suspense projects in TypeScript? This list will help you:
# | Project | Stars |
---|---|---|
1 | SWR | 31,431 |
2 | gqless | 3,669 |
3 | ultra | 2,986 |
4 | use-http | 2,313 |
5 | data-client | 1,990 |
6 | observable-hooks | 1,039 |
7 | react-fetching-library | 623 |
8 | suspense | 421 |
9 | yarr | 141 |
10 | glacier | 126 |
11 | vswr | 108 |
12 | react-safe-lazy | 13 |
13 | ssr-react-monorepo-example | 9 |
14 | react-fallback | 4 |