{"id":17700801,"url":"https://github.com/wrathchaos/react-native-image-picker-modal","last_synced_at":"2025-05-13T04:37:56.561Z","repository":{"id":57337603,"uuid":"444544621","full_name":"WrathChaos/react-native-image-picker-modal","owner":"WrathChaos","description":"Easy to use image picker modal with awesome iOS Picker design for React Native","archived":false,"fork":false,"pushed_at":"2022-01-26T18:27:33.000Z","size":20505,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-20T22:32:46.701Z","etag":null,"topics":["android","app-development","apple","front-end","google","ios","javascript","kuray","mobile","mobile-application-development","react-native","reactjs","typescript","ui","ux"],"latest_commit_sha":null,"homepage":"https://freakycoder.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"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":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-01-04T19:49:22.000Z","updated_at":"2023-05-12T17:06:36.000Z","dependencies_parsed_at":"2022-09-14T15:12:03.106Z","dependency_job_id":null,"html_url":"https://github.com/WrathChaos/react-native-image-picker-modal","commit_stats":null,"previous_names":[],"tags_count":3,"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-image-picker-modal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-image-picker-modal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-image-picker-modal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WrathChaos%2Freact-native-image-picker-modal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WrathChaos","download_url":"https://codeload.github.com/WrathChaos/react-native-image-picker-modal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253877363,"owners_count":21977634,"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-development","apple","front-end","google","ios","javascript","kuray","mobile","mobile-application-development","react-native","reactjs","typescript","ui","ux"],"created_at":"2024-10-24T17:43:13.661Z","updated_at":"2025-05-13T04:37:56.540Z","avatar_url":"https://github.com/WrathChaos.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg alt=\"React Native Image 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-image-picker-modal)\n\n[![React Native Image Picker Modal](https://img.shields.io/badge/-Easy%20to%20use%20image%20picker%20modal%20with%20awesome%20iOS%20Picker%20design%20for%20React%20Native-orange?style=for-the-badge)](https://github.com/WrathChaos/react-native-image-picker-modal)\n\n[![npm version](https://img.shields.io/npm/v/react-native-image-picker-modal.svg?style=for-the-badge)](https://www.npmjs.com/package/react-native-image-picker-modal)\n[![npm](https://img.shields.io/npm/dt/react-native-image-picker-modal.svg?style=for-the-badge)](https://www.npmjs.com/package/react-native-image-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 Image Picker Modal\"\n        src=\"assets/Screenshots/react-native-image-picker-modal.gif\" /\u003e\n\u003c/p\u003e\n\n# Installation\n\nAdd the dependency:\n\n```bash\nnpm i react-native-image-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```js\n\"react-native-image-picker\": \"\u003e= 4.7.0\",\n\"react-native-modal\": \"\u003e= 13.0.0\",\n\"@freakycoder/react-native-picker-modal\": \"\u003e= 0.1.0\",\n```\n\n# Usage\n\n## Import\n\n```jsx\nimport ImagePickerModal from \"react-native-image-picker-modal\";\n```\n\n## Fundamental Usage\n\n```jsx\n\u003cImagePickerModal\n  title=\"You can either take a picture or select one from your album.\"\n  data={[\"Take a photo\", \"Select from the library\"]}\n  isVisible={isVisible}\n  onCancelPress={() =\u003e {\n    setVisible(false);\n  }}\n  onBackdropPress={() =\u003e {\n    setVisible(false);\n  }}\n  onPress={(item: any) =\u003e {\n    setSelectedItem(item);\n    // Example usage from the object: `item.assets[0].uri`\n  }}\n/\u003e\n```\n\n### Asset Object from The Selection\n\n```json\n{\n  \"assets\": [\n    {\n      \"timestamp\": string, // \"2018-03-30T19:14:19.365+0000\"\n      \"type\": string, // \"image/jpg\"\n      \"fileName\": string,\n      \"fileSize\": number,\n      \"height\": number,\n      \"width\": number,\n      \"id\": string,\n      \"uri\": string\n    }\n  ]\n}\n```\n\n## Example Project 😍\n\nYou can checkout the example project 🥰\n\nSimply run\n\n- `npm i`\n- `react-native run-ios/android`\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| includeBase64             |        boolean        |         false         | when you need `base64`                                                                   |\n| capturePhotoOptions       |     CameraOptions     |        default        | override the options for capturing the photo                                             |\n| libraryPhotoOptions       |  ImageLibraryOptions  |        default        | override the options for picking images from library                                     |\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 Image 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-image-picker-modal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwrathchaos%2Freact-native-image-picker-modal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwrathchaos%2Freact-native-image-picker-modal/lists"}