JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 22
  • Score
    100M100P100Q51016F
  • License MIT

Package Exports

  • react-native-reels-view
  • react-native-reels-view/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-native-reels-view) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

React Native Reels View

A fully customizable, high‑performance Instagram/TikTok‑style Reels viewer for React Native. Built with TypeScript and designed for deeply interactive video feeds.

This package helps you build:

  • πŸ”₯ Smooth vertically‑scrolling reels
  • πŸŽ₯ Auto‑play, mute/unmute, and per‑video refs
  • ❀️ Like/Unlike with custom UI
  • πŸ’¬ Comments, reactions, interaction bar
  • πŸ”— Save/Unsave logic
  • πŸ‘€ Who reacted/commented components
  • πŸ“Œ Fully customizable render functions

πŸ“¦ Installation

npm install react-native-reels-view

or

yarn add react-native-reels-view

πŸš€ Basic Usage

import ReelsView from "react-native-reels-view";

const App = () => {
  return (
    <ReelsView
      data={reelsData}
      
    />
  );
};

πŸ“˜ API Reference

Below is the complete documentation for MyListProps<T>.


πŸ”Ή data: T[] (required)

The array of reel items.


πŸ”Ή renderItem?: (item: T, index: number) => React.ReactNode

Custom renderer for each reel.


πŸ”Ή canGoBack?: boolean

If true, shows a back icon.


πŸ”Ή onEndReached?: () => void

Triggered when the user scrolls to the last reel.


πŸ”Ή onEndReachedThreshold?: number

Defines how close to the bottom before onEndReached fires.


πŸ”Ή viewabilityConfig?: FlatListProps["viewabilityConfig"]

Controls which items are considered "viewable".


πŸ”Ή ListFooterComponent?: React.ReactNode

Renders custom footer.


πŸ”Ή ref?: React.Ref<FlatList>

Reference to the FlatList.


πŸ”Ή initialLoading?: boolean

Show loading before first reel appears.


πŸ”Ή loadingComponent?: React.ReactNode

Custom loading UI.


🎡 Mute/Unmute Icons

muteIcon?: React.ReactNode

unMuteIcon?: React.ReactNode


πŸŽ₯ videosRef?: VideoRef | Record<string, VideoRef> | function

Used to control videos individually.

Example usage:

videosRef={(refs) => console.log(refs)}

πŸŽ› reelsDetails?: (details, index) => React.ReactNode

Render custom author & description block.


⭐ Interaction Bar

reelsInteractionBar?: (details, index) => React.ReactNode

Fully custom interaction UI (like/share/save/comment).


❀️ Like / Unlike Icons

  • unlikeIcon?: React.ReactNode
  • likeIcon?: React.ReactNode

πŸ“Œ Save / Unsave Icons

  • unsaveIcon?: React.ReactNode
  • saveIcon?: React.ReactNode

πŸ‘€ currentUser?: { id, name, image, role? }

Used for reactions & comment attribution.


πŸ§‘β€πŸ€β€πŸ§‘ whoReactedComponent?: ({ item, index }) => React.ReactNode

Render list of people who liked the reel.


πŸ’¬ whoCommentedComponent?: ({ item, index }) => React.ReactNode

Render list of commenters.


πŸ“ onLikeTextPress?: (item, index) => void

Handles when user taps β€œLiked by…” text.


❀️‍πŸ”₯ LikeComponent

LikeComponent?: (
  details: { post: any; isLike: boolean; setIsLike: (value: boolean) => void },
  index: number
) => React.ReactNode;

Lets you override like logic entirely.


πŸ’Ύ SaveComponent

SaveComponent?: (
  details: { post: any; isSave: boolean; setIsSave: (value: boolean) => void },
  index: number
) => React.ReactNode;

βœ‰ onSendComment

onSendComment?: ({ commentText, post, setCommentText }) => void;

Called when user submits a comment.


πŸ“₯ renderInputComponent?: (post) => React.ReactNode

Custom input field.


πŸ—‚ customCommentsComponent?: ({ item, index }) => React.ReactNode

Override entire comments list.


🎯 Summary

This package gives you:

  • Full control over UI
  • Per‑reel refs
  • All interactions customizable
  • Commenting system
  • Reactions system
  • Smooth infinite scroll reels

Perfect for building:

  • Social feeds
  • Stories & reels
  • Content discovery pages

πŸ“„ License

MIT


If you want, I can also generate: βœ” npm‑ready README formatting βœ” GitHub badges βœ” Demo GIF placeholders βœ” Example code folder