{"id":18348714,"url":"https://github.com/paraboly/react-native-video-modal","last_synced_at":"2025-04-06T09:31:45.405Z","repository":{"id":34909793,"uuid":"188843009","full_name":"Paraboly/react-native-video-modal","owner":"Paraboly","description":"Fully customizable Video Modal for React Native via Paraboly.","archived":false,"fork":false,"pushed_at":"2023-01-27T04:27:08.000Z","size":5815,"stargazers_count":25,"open_issues_count":9,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-21T21:11:55.987Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.freakycoder.com","language":"JavaScript","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/Paraboly.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":"2019-05-27T12:52:41.000Z","updated_at":"2024-01-18T12:59:58.000Z","dependencies_parsed_at":"2023-02-15T05:16:32.777Z","dependency_job_id":null,"html_url":"https://github.com/Paraboly/react-native-video-modal","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-native-video-modal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-native-video-modal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-native-video-modal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Paraboly%2Freact-native-video-modal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Paraboly","download_url":"https://codeload.github.com/Paraboly/react-native-video-modal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247463744,"owners_count":20942935,"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":[],"created_at":"2024-11-05T21:18:55.631Z","updated_at":"2025-04-06T09:31:44.945Z","avatar_url":"https://github.com/Paraboly.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg alt=\"Paraboly React Native Video Modal\" src=\"https://github.com/Paraboly/react-native-video-modal/blob/master/assets/op_logo.png\" width=\"1050\"/\u003e\n\nFully customizable, loading style implemented Video Modal for React Native via Paraboly.\n\n[![npm version](https://img.shields.io/npm/v/@paraboly/react-native-video-modal.svg)](https://www.npmjs.com/package/@paraboly/react-native-video-modal)\n[![npm](https://img.shields.io/npm/dt/@paraboly/react-native-video-modal.svg)](https://www.npmjs.org/package/@paraboly/react-native-video-modal)\n[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)\n\n## Video Modal\n\n\u003cp align=\"center\"\u003e\n\u003cimg alt=\"Paraboly React Native Video Modal\" src=\"https://github.com/Paraboly/react-native-video-modal/blob/master/assets/Screenshots/example.png\" width=\"49.7%\"/\u003e\n\u003c/p\u003e\n\n## Installation\n\nAdd the dependency:\n\n```ruby\nnpm i @paraboly/react-native-card\n```\n\n## Peer Dependencies\n\n##### IMPORTANT! You need install them.\n\n```\n\"react\": \"\u003e= 16.x.x\",\n\"react-native\": \"\u003e= 0.55.x\",\n\"react-native-video\": \"\u003e= 4.4.1\",\n\"react-native-spinkit\": \"\u003e= 1.3.0\",\n\"react-native-vector-icons\": \"\u003e= 6.x.x\",\n\"react-native-material-ripple\": \"\u003e= 0.8.0\",\n\"@paraboly/react-native-modal-box\": \"\u003e= 0.0.1\",\n\"react-native-dynamic-vector-icons\": \"\u003e= x.x.x\",\n\"@freakycoder/react-native-helpers\": \"\u003e= 0.0.12\",\n\"react-native-floating-action-button\": \"\u003e= 0.1.14\",\n\"@freakycoder/react-native-custom-text\": \"\u003e= 0.0.12\"\n```\n\n## Basic Usage\n\n```js\n\u003cVideoModal title=\"Test Video Stream\" source={source} /\u003e\n```\n\n### Example Application\n\n- [check the code](example/App.js), and yes! :) all of the images, screenshots are directly taken\n  from the this example. Of course, you can simply clone the project and run the example on your own environment.\n\n### Configuration - Props\n\n| Property                |    Type    |             Default             | Description                                                                          |\n| ----------------------- | :--------: | :-----------------------------: | ------------------------------------------------------------------------------------ |\n| title                   |   string   |               \"\"                | use this to change the title                                                         |\n| source                  |   source   |               uri               | use this to set your own source for the Video Modal                                  |\n| isOpen                  |  boolean   |              true               | change the automatically open modal                                                  |\n| easing                  |   easing   |        Easing.elastic(1)        | change the easing animation option                                                   |\n| refName                 |   string   |              null               | set ref name for the modal                                                           |\n| onOpened                |  function  |              null               | set your own logic for the modal onOpen function                                     |\n| onClosed                |  function  |              null               | set your own logic for the modal onClose function                                    |\n| backdrop                |  boolean   |              true               | change the backdrop visibility                                                       |\n| coverScreen             |  boolean   |              false              | change it for cover the screen for modal                                             |\n| backgroundColor         |   color    |             \"black\"             | change the modal's background color                                                  |\n| textColor               |   color    |             \"white\"             | change the title's color                                                             |\n| fontFamily              | FontFamily |             default             | set your own FontFamily for the title                                                |\n| buttonSize              |   number   |               40                | change FAB buttons' size                                                             |\n| resizeMode              |   string   |            \"contain\"            | change the video resize mode                                                         |\n| modalWidth              |   number   |        ScreenWidth * 0.9        | change the modal's width                                                             |\n| modalHeight             |   number   |               350               | change the modal's height                                                            |\n| modalBottom             |   number   |               18                | change title's font size                                                             |\n| shadowColor             |   color    |             \"#000\"              | change main video modal's shadow color                                               |\n| shadowStyle             |   style    |         check the code          | set your own shadow style for the main video modal                                   |\n| titleStyle              |   style    | { bottom: ScreenHeight * 0.55 } | IMPORANT! it should be style to give it as bottom adjustment                         |\n| heartOnPress            |  function  |              null               | set your own logic for heart button                                                  |\n| fullScreenOnPress       |  function  |    Open the fullscreen video    | set your own logic for fullscreen button                                             |\n| disableButtons          |  boolean   |              false              | disable the buttons                                                                  |\n| buttonContainerStyle    |   style    |         check the code          | set your own button container style                                                  |\n| buttonsComponent        | component  |         check the code          | set your own button and its logic with your own component                            |\n| videoPlayerStyle        |   style    |         check the code          | set your own style for the video player                                              |\n| heartIconComponent      | component  |               FAB               | set your own style for button component instead of heart icon component              |\n| fullScreenIconComponent | component  |               FAB               | set your own style for button component instead of fullscreen icon component         |\n| loadingSize             |   number   |               40                | change the loading icon's size                                                       |\n| loadingType             |   string   |        \"FadingCircleAlt\"        | change the type of loading icon                                                      |\n| loadingColor            |   color    |             \"white\"             | change the color of loading icon                                                     |\n| loadingIsVisible        |  boolean   | business logic (check the code) | if you do not want to use default logic, you can change this prop to implement yours |\n| customVideoComponent    | component  |        (check the code)         | you can implement your own video component as well                                   |\n\n\n### List of loading available types\n\n- CircleFlip\n- Bounce\n- Wave\n- WanderingCubes\n- Pulse\n- ChasingDots\n- ThreeBounce\n- Circle\n- 9CubeGrid\n- WordPress (IOS only)\n- FadingCircle\n- FadingCircleAlt\n- Arc (IOS only)\n- ArcAlt (IOS only)\n\n## More Information about Loading SpinKit\n\n### [React Native Spinkit](https://github.com/maxs15/react-native-spinkit)\n\n## Author\n\nFreakyCoder, kurayogun@gmail.com | kuray.ogun@paraboly.com\n\n## License\n\nParaboly React Native Video Modal Library 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%2Fparaboly%2Freact-native-video-modal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparaboly%2Freact-native-video-modal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparaboly%2Freact-native-video-modal/lists"}