Skip to content

Mention specific React Native version #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 13, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<img src="https://raw.githubusercontent.com/jsdotlua/branding/main/Logo.png" align="right" height="128"/>

# VirtualizedList Lua
### High-performance virtualized scrolling lists for [react-lua](https://github.com/jsdotlua/react-lua).
### High-performance scrolling lists ported from React Native for [react-lua](https://github.com/jsdotlua/react-lua).

<a href="https://github.com/jsdotlua/virtualized-list-lua/blob/main/LICENSE.md">
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="license" height="18">
Expand All @@ -25,8 +25,9 @@ A collection of virtual list components, supporting the most handy features:
- Scroll loading
- ScrollToIndex support
- Multiple column support
- Animation suppot

Virtualization massively improves memory consumption and performance of large lists by maintaining a finite render window of active items and replacing all items outside of the render window with appropriately sized blank space. The window adapts to scrolling behavior, and items are rendered incrementally with low-pri (after any running interactions) if they are far from the visible area, or with hi-pri otherwise to minimize the potential of seeing blank space.
Virtualization massively improves memory consumption and performance of large lists by maintaining a finite render window of active items and replacing all items outside of the render window with appropriately sized blank space. The window adapts to scrolling behavior, and items are rendered incrementally with low-priority (after any running interaction responses) if they are far from the visible area, or with high-priority otherwise to minimize the potential of seeing blank space.

## Caveats

Expand Down Expand Up @@ -105,8 +106,14 @@ root:render(ReactRoblox.createPortal(e(App), Players.LocalPlayer.PlayerGui))

## Documentation

More information on the provided list components can be found at:
These components are directly ported from React Native 0.68, so most documentation and articles should apply (modulo Lua syntax). More information on the provided list components can be found at:

- `VirtualizedList` - https://reactnative.dev/docs/virtualizedlist
- `FlatList` - https://reactnative.dev/docs/flatlist
- `SectionList` - https://reactnative.dev/docs/sectionlist

## TODO

- Add unit tests from upstream React Native
- Use `darklua` bundler to allow more files to easily run outside of Roblox
- Add performance benchmarks