Installations
npm install react-native-avoid-softinput
Developer
Developer Guide
Module System
CommonJS
Min. Node Version
Typescript Support
Yes
Node Version
18.20.5
NPM Version
10.8.2
Statistics
716 Stars
202 Commits
21 Forks
5 Watching
4 Branches
12 Contributors
Updated on 20 Nov 2024
Languages
TypeScript (33.89%)
Kotlin (32.14%)
Objective-C++ (27.59%)
Objective-C (4.17%)
JavaScript (1.33%)
Ruby (0.88%)
Total Downloads
Cumulative downloads
Total Downloads
1,244,541
Last day
76.2%
5,274
Compared to previous day
Last week
44.7%
24,189
Compared to previous week
Last month
-6.9%
91,793
Compared to previous month
Last year
103.3%
779,838
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Dependencies
1
Peer Dependencies
2
react-native-avoid-softinput
Handle keyboard in React Native apps like a Pro
Native solution for common React Native problem of focused views being covered by soft input view. It is solved by listening for soft input events and applying translation to react root view (or bottom padding if focused element's parent is scroll view) entirely on native side and only if currently focused view is covered by soft input frame. It supports focused views being positioned in scroll views and regular views (check out example app). It also supports modal content, when content is wrapped in AvoidSoftInputView.
Documentation
Check package documentation
Support
This library follows the React Native releases support policy. It is supporting the latest version, and the two previous minor series. You may find it working correctly with some older React Native versions, but it'll be a "Use at your own risk" case.
This library supports "New Architecture".
Installation
Library supports Android & iOS, for out-of-tree platforms, View
component is used as fallback.
- Install library with your package manager:
1yarn add react-native-avoid-softinput
or
1npm i --save react-native-avoid-softinput
- (iOS-only) Install pods:
1npx pod-install
For reference, you can visit Getting started section
Expo
- ✅ You can use this library with Development Builds. No config plugin is required.
- ❌ This library can't be used in the "Expo Go" app because it requires custom native code.
Usage
Check usage guides for module and view
Alternatives
If library does not suite your needs, you can check alternatives section
Contributing
See the contributing guide to learn how to contribute to the repository and the development workflow.
License
MIT
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
30 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: MIT License: LICENSE:0
Reason
binaries present in source code
Details
- Warn: binary detected: packages/example/android/gradle/wrapper/gradle-wrapper.jar:1
- Warn: binary detected: packages/react-native-avoid-softinput/android/gradle/wrapper/gradle-wrapper.jar:1
Reason
Found 2/9 approved changesets -- score normalized to 2
Reason
8 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg
- Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22
- Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp
- Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j
- Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw
- Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q
- Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv
- Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: no topLevel permission defined: .github/workflows/build-docs.yml:1
- Warn: no topLevel permission defined: .github/workflows/lint-android.yml:1
- Warn: no topLevel permission defined: .github/workflows/lint-ios.yml:1
- Warn: no topLevel permission defined: .github/workflows/lint-js.yml:1
- Warn: no topLevel permission defined: .github/workflows/npm-release-template.yml:1
- Warn: no topLevel permission defined: .github/workflows/pre-release.yml:1
- Warn: no topLevel permission defined: .github/workflows/release-major.yml:1
- Warn: no topLevel permission defined: .github/workflows/release-minor.yml:1
- Warn: no topLevel permission defined: .github/workflows/release-patch.yml:1
- Info: no jobLevel write permissions found
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
security policy file not detected
Details
- Warn: no security policy file detected
- Warn: no security file to analyze
- Warn: no security file to analyze
- Warn: no security file to analyze
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-docs.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/build-docs.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-docs.yml:64: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/build-docs.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-docs.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/build-docs.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-docs.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/build-docs.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-android.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-android.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-android.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-android.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-android.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-android.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-android.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-android.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-ios.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-ios.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-ios.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-ios.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-ios.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-ios.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-js.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-js.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint-js.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/lint-js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-release-template.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/npm-release-template.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-release-template.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/npm-release-template.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/npm-release-template.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/mateusz1913/react-native-avoid-softinput/npm-release-template.yml/main?enable=pin
- Info: 0 out of 17 GitHub-owned GitHubAction dependencies pinned
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
- Warn: 0 commits out of 26 are checked with a SAST tool
Score
4
/10
Last Scanned on 2024-11-18
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More