{"id":18488208,"url":"https://github.com/mateusz1913/react-native-avoid-softinput","last_synced_at":"2025-05-14T05:10:48.076Z","repository":{"id":37003364,"uuid":"382468045","full_name":"mateusz1913/react-native-avoid-softinput","owner":"mateusz1913","description":"Native solution for common React Native problem of focused views being covered by soft input view.","archived":false,"fork":false,"pushed_at":"2025-02-09T16:12:57.000Z","size":13685,"stargazers_count":735,"open_issues_count":2,"forks_count":21,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-14T03:57:28.834Z","etag":null,"topics":["android","ios","keyboard","react-native","softinput"],"latest_commit_sha":null,"homepage":"https://mateusz1913.github.io/react-native-avoid-softinput/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mateusz1913.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-02T21:27:18.000Z","updated_at":"2025-04-11T14:35:24.000Z","dependencies_parsed_at":"2023-12-19T19:47:28.710Z","dependency_job_id":"1cb43868-126f-4b16-9efc-6e525d0a8849","html_url":"https://github.com/mateusz1913/react-native-avoid-softinput","commit_stats":{"total_commits":184,"total_committers":16,"mean_commits":11.5,"dds":0.2934782608695652,"last_synced_commit":"3528976c7b598b9b106cc98c31522f6e8de8bfa7"},"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusz1913%2Freact-native-avoid-softinput","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusz1913%2Freact-native-avoid-softinput/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusz1913%2Freact-native-avoid-softinput/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mateusz1913%2Freact-native-avoid-softinput/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mateusz1913","download_url":"https://codeload.github.com/mateusz1913/react-native-avoid-softinput/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076850,"owners_count":22010611,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","ios","keyboard","react-native","softinput"],"created_at":"2024-11-06T12:51:24.862Z","updated_at":"2025-05-14T05:10:47.948Z","avatar_url":"https://github.com/mateusz1913.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Mobile"],"sub_categories":["React Native \u0026 Expo"],"readme":"# `react-native-avoid-softinput`\n\n\u003cdiv align=\"center\"\u003e\n  \u003cdiv style=\"padding: 30px\"\u003e\n    \u003cimg src=\"./static/AppIcon.svg\" alt=\"React Native Avoid SoftInput logo\" width=\"50%\" /\u003e\n  \u003c/div\u003e\n  \u003cblockquote\u003eHandle keyboard in React Native apps like a Pro\u003c/blockquote\u003e\n\u003c/div\u003e\n\nNative 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](https://mateusz1913.github.io/react-native-avoid-softinput/docs/api/view/).\n\n\u003cdiv align=\"center\" style=\"padding: 30px\"\u003e\n  \u003cp align=\"center\"\u003e\n    \u003cimg src=\"./static/form.gif\" alt=\"Form example\" /\u003e\n    \u003cimg src=\"./static/sticky-footer.gif\" alt=\"Sticky footer example\" /\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n## Documentation\n\nCheck package [documentation](https://mateusz1913.github.io/react-native-avoid-softinput/)\n\n## Support\n\nThis library follows the React Native [releases support policy](https://github.com/reactwg/react-native-releases#releases-support-policy).\nIt is supporting **the latest version**, and **the two previous minor series**.\nYou may find it working correctly with some older React Native versions, but it'll be a \"Use at your own risk\" case.\n\nThis library supports \"New Architecture\".\n\n## Installation\n\nLibrary supports Android \u0026 iOS, for out-of-tree platforms, `View` component is used as fallback.\n\n1. Install library with your package manager:\n\n```sh\nyarn add react-native-avoid-softinput\n```\n\nor\n\n```sh\nnpm i --save react-native-avoid-softinput\n```\n\n2. (iOS-only) Install pods:\n\n```sh\nnpx pod-install\n```\n\nFor reference, you can visit [Getting started](https://mateusz1913.github.io/react-native-avoid-softinput/docs/guides/) section\n\n## Expo\n\n- ✅ You can use this library with [Development Builds](https://docs.expo.dev/development/introduction/). No config plugin is required.\n- ❌ This library can't be used in the \"Expo Go\" app because it [requires custom native code](https://docs.expo.dev/workflow/customizing/).\n\n## Usage\n\nCheck usage guides for [module](https://mateusz1913.github.io/react-native-avoid-softinput/docs/guides/usage-module) and [view](https://mateusz1913.github.io/react-native-avoid-softinput/docs/guides/usage-view)\n\n## Alternatives\n\nIf library does not suite your needs, you can check [alternatives section](https://mateusz1913.github.io/react-native-avoid-softinput/docs/guides/alternatives)\n\n## Contributing\n\nSee the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateusz1913%2Freact-native-avoid-softinput","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmateusz1913%2Freact-native-avoid-softinput","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmateusz1913%2Freact-native-avoid-softinput/lists"}