New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

react-native-stretchy

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-native-stretchy

A ReactNative scrollable stretchy header component

  • 4.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
226
decreased by-23.13%
Maintainers
1
Weekly downloads
 
Created
Source

react-native-stretchy 🤸‍♀️

A ReactNative Scrollable Stretchy Header Component.

✅ Fully optimized for lists
✅ Fully TypeScript support
✅ Use native animation
✅ Expo Support

StretchyBatman

🧐 Installation

npm install react-native-stretchy --save

🎓 Basic Usage

import React, { Component } from 'react';
import { Text, View } from 'react-native';
import { StretchyScrollView } from 'react-native-stretchy';

class SystretchyScrollView extends Component {
  render() {
    return (
      <StretchyScrollView
        image={{ uri: 'https://example.com/myImageAddress' }}
        onScroll={(position, reachedToTheBottomOfHeader) =>
          console.log(position, reachedToTheBottomOfHeader)
        }>
        <Text>Foo</Text>
        <Text>Bar</Text>
      </StretchyScrollView>
    );
  }
}

ℹ️ Properties

These are default properties for all stretchy components

PropDefaultDescription
backgroundColor#FFFBackground color of the inner content
imagenullThe image of the stretchy header (RN image source)
imageHeightnullHeight of the stretchy header image (keep ratio of image if not provided)
imageResizeMode'cover'ResizeMode of the stretchy header image. You can use one of these values
imageOverlaynullA RN Component for image overlay
foregroundnullA RN Component for foreground content of background
onScrollnullA callback function with these arguments:
position: current position of scroll
reachedToTheBottomOfHeader: boolean flag to specify whether the scroll has reached to the bottom of header or not

💁‍♂️ Components

<StretchyScrollView />

Simple ScrollView with stretchy header support.

<StretchyFlatList />

React-Native FlatList component with stretchy header support.

<StretchySectionList />

React-Native SectionList component with stretchy header support.

NOTE:

  1. In addition to the default stretchy props, you can use all available props for ScrollView, FlatList and SectionList.
  2. You can find all available components usage in example project.

🎮 Run Example Project

To see all components in action you can run the Example project by following these steps:

  1. Clone the project
  2. Install node modules by running npm i or yarn at the root of project
  3. Run npm run watch or yarn watch to compile and watch source files
  4. Run npm run start or yarn start to start the RN packager and keep it open
  5. Open example.xcworkspace from /example/ios and run the project from XCode

NOTE: I changed the location of iOS and Android directories and even after specifying new locations on react-native.config we can't run the example project via RN cli. See this issue

🧩 Contribution

I'm still trying to improve the codebase of this package so if you have any idea in terms of the structure, features or anything else, please let me know by whether sending a PR or open an issue and start a discuession. I really appreciate that. :wink:

👮‍♂️ License

Licensed under the MIT License.

Keywords

FAQs

Package last updated on 01 Oct 2020

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc