{"id":17700795,"url":"https://github.com/wrathchaos/react-native-picker-modal","last_synced_at":"2025-05-06T20:44:42.478Z","repository":{"id":86534466,"uuid":"443814768","full_name":"WrathChaos/react-native-picker-modal","owner":"WrathChaos","description":"Easy and fully customizable picker modal for React Native","archived":false,"fork":false,"pushed_at":"2023-07-10T20:01:05.000Z","size":7346,"stargazers_count":29,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-01T03:17:30.473Z","etag":null,"topics":["android","app","apple","application","development","front-end","google","ios","mobile","mobile-development","modal","picker","picker-modal","react-native","reactjs","select","select-modal","ui","ux"],"latest_commit_sha":null,"homepage":"https://freakycoder.com","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/WrathChaos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2022-01-02T16:31:20.000Z","updated_at":"2025-03-30T10:53:00.000Z","dependencies_parsed_at":"2024-10-24T21:24:34.545Z","dependency_job_id":"16b956f0-3ceb-4d7c-b775-9e64e9bce06d","html_url":"https://github.com/WrathChaos/react-native-picker-modal","commit_stats":{"total_commits":20,"total_committers":2,"mean_commits":10.0,"dds":"0.15000000000000002","last_synced_commit":"b96d0bb82ab3c4f1ec5524b88a5319fc4b156c95"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":"WrathChaos/react-native-typescript-library-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-picker-modal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-picker-modal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-picker-modal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-picker-modal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WrathChaos","download_url":"https://codeload.github.com/WrathChaos/react-native-picker-modal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252769128,"owners_count":21801373,"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","app","apple","application","development","front-end","google","ios","mobile","mobile-development","modal","picker","picker-modal","react-native","reactjs","select","select-modal","ui","ux"],"created_at":"2024-10-24T17:43:13.157Z","updated_at":"2025-05-06T20:44:42.435Z","avatar_url":"https://github.com/WrathChaos.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg alt=\"React Native Picker Modal\" src=\"assets/logo.png\" width=\"1050\"/\u003e\n\n[![Battle Tested ✅](https://img.shields.io/badge/-Battle--Tested%20%E2%9C%85-03666e?style=for-the-badge)](https://github.com/WrathChaos/react-native-picker-modal)\n\n[![React Native Picker Modal](https://img.shields.io/badge/-Easy%20and%20fully%20customizable%20picker%20modal%20for%20React%20Native-orange?style=for-the-badge)](https://github.com/WrathChaos/react-native-picker-modal)\n\n[![npm version](https://img.shields.io/npm/v/@freakycoder/react-native-picker-modal.svg?style=for-the-badge)](https://www.npmjs.com/package/@freakycoder/react-native-picker-modal)\n[![npm](https://img.shields.io/npm/dt/@freakycoder/react-native-picker-modal.svg?style=for-the-badge)](https://www.npmjs.com/package/@freakycoder/react-native-picker-modal)\n![Platform - Android and iOS](https://img.shields.io/badge/platform-Android%20%7C%20iOS-blue.svg?style=for-the-badge)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg?style=for-the-badge)](https://opensource.org/licenses/MIT)\n[![styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg?style=for-the-badge)](https://github.com/prettier/prettier)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"React Native Picker Modal\"\n        src=\"assets/Screenshots/react-native-picker-modal.gif\" /\u003e\n\u003c/p\u003e\n\n# Installation\n\nAdd the dependency:\n\n```bash\nnpm i react-native-picker-modal\n```\n\n## Peer Dependencies\n\n\u003ch5\u003e\u003ci\u003eIMPORTANT! You need install them\u003c/i\u003e\u003c/h5\u003e\n\n```ts\n\"react-native-modal\": \"\u003e= 13.0.0\"\n```\n\n# Usage\n\n## Import\n\n```tsx\nimport PickerModal from \"@freakycoder/react-native-picker-modal\";\n```\n\n## Fundamental Usage\n\n```tsx\n\u003cPickerModal\n  title=\"You can either take a picture or select one from your album.\"\n  isVisible={isVisible}\n  data={[\"Take a photo\", \"Select from album\"]}\n  onPress={(selectedItem: string, index: number) =\u003e {\n    console.log({ selectedItem, index });\n  }}\n  onCancelPress={() =\u003e {\n    setVisible(false);\n  }}\n  onBackdropPress={() =\u003e {\n    setVisible(false);\n  }}\n/\u003e\n```\n\n## Example Project 😍\n\nYou can checkout the example project 🥰\n\nSimply run\n\n```\nnpm i\n```\n\n```\nreact-native run-ios/android\n```\n\nshould work of the `example` project.\n\n# Configuration - Props\n\n## \u003ci\u003eFundamentals [Required]\u003c/i\u003e\n\n| Property      |   Type   |  Default  | Description                                                               |\n| ------------- | :------: | :-------: | ------------------------------------------------------------------------- |\n| title         |  string  | undefined | change the title                                                          |\n| data          | string[] | undefined | set the picker modal dataset as string array                              |\n| isVisible     | boolean  | undefined | change the picker modal visibility                                        |\n| onPress       | function | undefined | set your own logic for the button functionality when it is pressed        |\n| onCancelPress | function | undefined | set your own logic for the cancel button functionality when it is pressed |\n\n## Customization (Optionals)\n\n| Property                  |         Type          |        Default        | Description                                                                              |\n| ------------------------- | :-------------------: | :-------------------: | ---------------------------------------------------------------------------------------- |\n| onBackdropPress           |       function        |       undefined       | set your own logic for the backdrop of the modal functionality when it is pressed        |\n| TouchableComponent        | `TouchableHightlight` |        default        | set your own component instead of default `react-native` `TouchableHightlight` component |\n| style                     |       ViewStyle       |        default        | set or override the style object for the main container                                  |\n| dividerStyle              |       ViewStyle       |        default        | set or override the style object for the divider style                                   |\n| cancelButtonStyle         |       ViewStyle       |        default        | set or override the style object for the cancel button style                             |\n| titleTextContainer        |       ViewStyle       |        default        | set or override the style object for the title text container                            |\n| titleTextStyle            |       TextStyle       |        default        | set or override the style object for the title text style                                |\n| cancelButtonTextStyle     |       ViewStyle       |        default        | set or override the style object for the cancel button text container                    |\n| actionButtonStyle         |       ViewStyle       |        default        | set or override the style object for the action button container                         |\n| actionButtonTextStyle     |       ViewStyle       |        default        | set or override the style object for the action button text                              |\n| actionButtonUnderlayColor |        string         |    rgba(0,0,0,0.3)    | change the action button's underlay color                                                |\n| cancelButtonUnderlayColor |        string         | rgba(200,200,200,0.1) | change the cancel button's underlay color                                                |\n\n## Future Plans\n\n- [x] ~~LICENSE~~\n- [ ] Write an article about the lib on Medium\n\n## Author\n\nFreakyCoder, kurayogun@gmail.com\n\n## License\n\nReact Native Picker Modal is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwrathchaos%2Freact-native-picker-modal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwrathchaos%2Freact-native-picker-modal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwrathchaos%2Freact-native-picker-modal/lists"}