
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@attio/react-data-list
Advanced tools
React Data List is a library which helps you build data arrays by expressing items declaratively using React components. It was built primarily for React Native, but should work anywhere.
React Data List is a library which helps you build data arrays by expressing items declaratively using React components. It was built primarily for React Native, but should work anywhere.
For a full explanation around why this exists, please checkout the counterpart article here.
function ErrorOnRenderCheck() {
return (
<View
onLayout={() => {
throw new Error("This never happens as we evaluate descriptors before first paint.")
}}
/>
)
}
<ReactDataList
renderer={
<FlashListRenderer
contentContainerStyle={contentContainerStyle}
ListHeaderComponent={
<Header
toggleThorinAndCompany={toggleThorinAndCompany}
jumbleFellowship={jumbleFellowship}
/>
}
/>
}
renderEmpty={() => (
/**
* This never happens as we're guaranteed rows will be
* evaluated to data items on first paint.
*/
<View style={styles.alert}>
<ErrorOnRenderCheck />
</View>
)}
>
{/* Supports nested ReactDataList instances */}
<ListHeaderDataListRow title="Places in Middle Earth" />
<MiddleEarthPlacesDataListRow placeItems={MIDDLE_EARTH_PLACES} />
<ListHeaderDataListRow title="The Fellowship" />
{fellowship.map((character) => (
<CharacterListItemDataListRow
key={character.name}
name={character.name}
race={character.race}
url={character.url}
/>
))}
{isShowingThorinAndCompany && (
<>
<ListHeaderDataListRow title="Thorin and Company" />
<React.Suspense fallback={<LoadingListItemDataListRow />}>
<MiddleEarthHobbitCompanyDataListRows />
</React.Suspense>
</>
)}
</ReactDataList>
https://github.com/user-attachments/assets/23c2d232-7f35-470e-98b4-156efaaf326a
A lightweight wrapper around ReactDataList which provides a top-level React.Suspense and ErrorBoundary. This is useful for typical async work, where you may want to display skeleton rows (via renderPendingRows), a full-screen spinner (via renderPending), or perhaps a full-screen error message (via renderError).
<ReactDataList.Fetchable
renderer={
<FlashListRenderer
contentContainerStyle={contentContainerStyle}
ListHeaderComponent={<Header reload={reload} />}
/>
}
renderPendingRows={
<>
<ListHeaderDataListRow title="Thorin and Company" />
<LoadingListItemDataListRow />
<LoadingListItemDataListRow />
<LoadingListItemDataListRow />
<LoadingListItemDataListRow />
<LoadingListItemDataListRow />
<LoadingListItemDataListRow />
</>
}
>
<ListHeaderDataListRow title="Thorin and Company" />
<MiddleEarthHobbitCompanyDataListRows key={reloadKey} />
</ReactDataList.Fetchable>
https://github.com/user-attachments/assets/8ab7b63e-1ddc-40f9-8d20-6d443f21c934
This repo uses Changesets for versioning and GitHub Actions for automated publishing.
# Generate a changeset for your changes
bunx changeset
.changeset/When you push to the master branch, the GitHub Action will:
When the "Version Packages" PR is merged:
bun run build-releasechangeset publish# 1. Create changesets for changes
bunx changeset
# 2. Version packages (updates versions + CHANGELOGs)
bun run changeset-version
# 3. Build and publish
bun run changeset-publish
FAQs
React Data List is a library which helps you build data arrays by expressing items declaratively using React components. It was built primarily for React Native, but should work anywhere.
We found that @attio/react-data-list demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.