📺 Display and animate textured Wavefront .OBJ 3D models with 60fps - native bridge to GLView (iOS) and jPCT-AE (Android)

Overview

react-native-gl-model-view

npm version license

A <ModelView> component for react-native, allowing you to display and animate any Wavefront .OBJ 3D object. Realized with a native bridge to GLView for iOS and a native bridge to jPCT-AE for Android.

Main features:

Getting started

Since React Native 0.60 and higher, autolinking makes the installation process much simpler.

$ yarn add react-native-gl-model-view

# Update your pods (iOS)
$ cd ios
$ pod install

Using React Native Link (React Native 0.59 and lower)

Run react-native link react-native-gl-model-view after which you should be able to use this library on iOS and Android.

iOS Manual installation

$ yarn add react-native-gl-model-view

Afterwards add following lines to your Podfile:

pod 'React', :path => '../node_modules/react-native'
pod 'RNGLModelView', :path => '../node_modules/react-native-gl-model-view'

Android Manual installation

$ yarn add react-native-gl-model-view

Afterwards, add the following lines to the android/settings.gradle file:

include ':react-native-gl-model-view'
project(':react-native-gl-model-view').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-gl-model-view/android/app')

Finally, add the react-native-gl-model-view project as a dependency of the android/app/build.gradle file:

dependencies {
    compile project(':react-native-gl-model-view')
    ...
}

Usage

Model and texture loading

iOS

To load a model on iOS, you need to put the file at the root of your Xcode project via the editor.

Android

To load a model on Android, you need to place the model in the android/app/src/main/assets folder. Create a new folder if it doesn't exist yet.

Static

import ModelView from 'react-native-gl-model-view';

<ModelView
    model={{
      uri: 'model.obj',
    }}
    texture={{
      uri: 'texture.png',
    }}

    scale={0.01}

    translateZ={-2}
    rotateZ={270}

    style={{flex: 1}}
/>

Animated

Make the <ModelView>'s native props animatable by wrapping the Animated API around it:

import ModelView from 'react-native-gl-model-view';
import { Animated, Easing } from 'react-native';

const AnimatedModelView = Animated.createAnimatedComponent(ModelView);

As this usage of the Animated API is kinda hacky, you must call the private __makeNative() method on all Animated.Values before using Animated.multiply and such.

constructor() {
    this.state = {
        zoom: new Animated.Value(0),
        // ...
    };
    Object.keys(this.state).forEach(key =>
        this.state[key] instanceof Animated.Value &&
        this.state[key].__makeNative()
    );
}

Now you can apply all the Animated API magic to the <AnimatedModelView>'s props.

render() {
    <AnimatedModelView
        ...
        animate={true}
        translateZ={this.state.zoom}
    />
}
componentDidMount() {
    Animated.timing(this.state.zoom, {
        toValue: -2,
        useNativeDriver: true,
        duration: 2000,
        easing: Easing.bounce
    }).start();
}

Properties

Prop Default Type Description
model undefined object filename or URL of the model as uri
texture undefined object filename or URL of the texture as uri
tint {r: 1.0, g: 1.0, b: 1.0, a: 1.0} object Tints the texture or set the color of the model if there is no texture
animate false bool Model re-renders each 1/60s when set to true
flipTexture false bool The texture will be flipped vertically when set to true
scale 1 number Scale all axes of the model by given factor (overwrites scale*)
scaleX 1 number Scale X axis by given factor
scaleY 1 number Scale Y axis by given factor
scaleZ 1 number Scale Z axis by given factor
rotateX 0 number Rotate around X axis by given degree
rotateY 0 number Rotate around Y axis by given degree
rotateZ 0 number Rotate around Z axis by given degree
translateX 0 number Translate X position by given points
translateY 0 number Translate Y position by given points
translateZ 0 number Translate Z position by given points

Examples

Check out the example project:

To install the dependencies, switch into the example folder and set it up as following:

$ yarn

To build and run the app, set it up as following:

iOS

$ cd ios
$ pod install
$ cd ..
$ react-native run-ios

Android

$ react-native run-android

Special thanks

License

The MIT License (MIT)

Copyright (c) 2019 Michael Straßburger Copyright (c) 2019 The react-native-gl-model-view authors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Comments
  • source.zip is undefined

    source.zip is undefined

    Hi there.

    I was getting the error message "source.zip is undefined" and I traced it to the method loadModel in BaseModelView.js. In that method, it expects the props source and onLoadModelStart. Neither of these props are being passed, but model, texture, and all the transformation props are.

    In the examples, I see model and texture are top level props, but it now seems to want a JSON object in the top level prop source, so presumably the examples are just out of date?

    Doing this solve "source.zip is undefined" bug but now I get Unhandled JS Exception: TypeError: null is not an object (evaluating '(0, _resolveAssetSource2.default)(source.model).uri') which seems to indicate my model is in the wrong location?

    You say to add the model/texture to the root of the Xcode using the editor. Based on the screenshot, does it look like the model/texture (apple.obj/jpg) is in the right place?

    screen shot 2018-05-10 at 2 38 49 pm

    opened by Dylan-Wells-at-LION 13
  • Lighting/Texture issues

    Lighting/Texture issues

    Hello again. I figured I'd make an issue about two separate issues since they can be explained with the same example, but I'd be happy to split this into two issues if you'd prefer.

    Here is a gist of the ModelAnimator component that I'm using which is basically just a stripped down copy of your Animations component in the example: https://gist.github.com/Dylan-at-LION/66b33abab4e222add280d90cf3858465

    Here is a GIF demonstrating both issues, note that the GIF is heavily optimized and there are no dots on the sphere in actuality:

    orange

    Issue 1: Lighting

    When I rotate my model, the lighting changes. This doesn't seem be affected by the props scale or translateZ as I suspected, but it does tend to happen more with spherical models. Ideally there would be consistent 'global lighting' like in a studio or something. The orange.obj (linked below) is initialized with a scale of 3:

    <ModelAnimator model={ 'orange.obj' } texture={ 'orange2.jpg' } scale={ 3 } />

    Issue 2: Texturing

    The texture files seem to be applying the entire image instead mapping UV coordinates. Here is the texture file the free model came with (from Turbosquid):

    color

    Here is a texture I made from scratch in Photoshop just to see if it would make any difference (no):

    orange2

    What I did notice is that Photoshop maps the texture in basically the same way onto the image, save for the top left part.

    I am using strictly .obj files. The only texture I've gotten to work properly is the demon.model / demon.png from the example. I don't have any more .model files to test with yet but I'm trying to get my hands on one, to see if that has anything to do with it. I thought maybe the demon.png texture having the color black as its negative space had something to do with it, but when I made the background black on the orange texture, black simply showed up on the orange with the rest of it.

    Here is the .obj of the orange: https://gist.github.com/Dylan-at-LION/aa45c6e16f17a49f993e2dec9f7314b5

    The orange.obj in question has this at the top: mtllib Orange.mtl

    Could not providing the .mtl have anything to do with this?

    Any help would be greatly appreciated even if only a point in the right direction. I don't really know Objective C but I'm not terribly intimidated by the prospect of poking around in there.

    bug enhancement 
    opened by Dylan-Wells-at-LION 12
  • Android Support

    Android Support

    @rastapasta - great work on this. We're looking at using it for our mobile app and potentially contributing with the Android Port.

    Do you have any suggestions or guidance on what (if any) Android libs you'd like to use to map the native bindings to?

    Hacktoberfest 
    opened by dorthwein 12
  • How to display .obj files from Android phone local store

    How to display .obj files from Android phone local store

    Hello everyone, is someone who knows how to display .obj files from device file system ? I don't want to save it in assets folder. Thank you in advance....

    question 
    opened by nickwansi 5
  • Display obj file from project

    Display obj file from project

    I got an error saying

    Error while updating property 'texture' of a view managed by: RNGLModelView java.lang.Double cannot be cast to com.facebook.react/bridge.ReadableMap

    import ModelView from 'react-native-gl-model-view';
    
       <ModelView
            model={require('../android/app/src/main/assets/Hamburger.obj')}
            texture={require('../android/app/src/main/assets/Hamburger.png')}
            scale={0.01}
            translateZ={-2}
            rotateZ={270}
            style={{ width: '100%', height: 500 }}
         />
    
    invalid wontfix 
    opened by alz10 4
  • :art: Add Android support

    :art: Add Android support

    I added support for Android via a native bridge with jpct-ae. This includes:

    • Java code to render the view and render the model via jpct-ae
    • Custom .model loader for Android to load demon.model
    • The Android version of the example app

    There's a known bug where the Android gesture responder's touch location doesn't update. Thereforce, the GestureResponder example doesn't work for Android. We could make a workaround by calculating the delta ourselves, but I think it's better to just update the react-native version since it's probably fixed in the latest version.

    enhancement 
    opened by PatriceVignola 4
  • facing issue in android with error message

    facing issue in android with error message " Invariant Violation: requireNativeComponent: "RNGLModelView" was not found in the UIManager."

    I done all the required steps in documentation. But still I am facing the issue like below.

     ERROR    Invariant Violation: requireNativeComponent: "RNGLModelView" was not found in the UIManager.
    This error is located at:
        in RNGLModelView (at react-native-gl-model-view/index.js:7)
        in GLModelView (at App.js:8)
        in Cat (at renderApplication.js:45)
        in RCTView (at View.js:34)
        in View (at AppContainer.js:106)
        in RCTView (at View.js:34)
        in View (at AppContainer.js:132)
        in AppContainer (at renderApplication.js:39)
    
    opened by krjk333 3
  • Release build failing

    Release build failing

    While building a production release (1st time) I get an error. But works fine on development environment. Can @rastapasta @PatriceVignola @Cawfree you please guide me on this and let me know what the issue is?

    Task :react-native-gl-model-view:verifyReleaseResources FAILED FAILURE: Build failed with an exception.

    • What went wrong: Execution failed for task ':react-native-gl-model-view:verifyReleaseResources'.

    java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource linking failed ..\node_modules\react-native-gl-model-view\android\build\intermediates\res\merged\release\values-v28\values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found. ..\node_modules\react-native-gl-model-view\android\build\intermediates\res\merged\release\values-v28\values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found. ..\node_modules\react-native-gl-model-view\android\build\intermediates\res\merged\release\values\values.xml:2714: error: resource android:attr/fontVariationSettings not found. ..\node_modules\react-native-gl-model-view\android\build\intermediates\res\merged\release\values\values.xml:2715: error: resource android:attr/ttcIndex not found. error: failed linking references.

    Error

    opened by Amjad675 3
  • model and texture files not working

    model and texture files not working

    Everything has been linked and works fine without any linking issues. But when I pass the model and texture props to ModelView as below model={{ uri: "cmodel.obj" }} texture={{ uri: "texture.png" }}

    I get the following error (screenshot attached)

    Can somebody please assist me on this? Screen Shot 2019-04-10 at 6 25 09 PM

    question 
    opened by Amjad675 3
  • Support textures and models from online sources

    Support textures and models from online sources

    Hey rastapasta,

    Thank you for this amazing repository.

    I realise there haven't been many commits here for a while, but hopefully you might be willing to accept the following changes:

    • Upgrade to [email protected]
    • Added example of downloading and rendering textures and geometries from the raw resources of this directory using axios
    • Added support for accepting Base64 encoded textures and geometries on native iOS/Android
    • Removed flickering on Android due to onDraw() not being called for every frame.
      • This just meant adding animated to each <ModelView />; we can make this Platform-specific if you'd prefer
    • Updated iOS project to use the new glog podspec, instead of the deprecated Glog library
    • Treated both model and texture as non-required
    • model and texture are now object props
      • I've tried to match the conventions that we see in <Image />, where resources are specified using uri

    Thanks again!

    opened by cawfree 3
  • Example flickering on Android

    Example flickering on Android

    Hi,

    I tried copying the example and running on two physical devices (Motorola g4 play and Samsung Tablet SM-T530). The models flicker at a very fast frame rate (60fps?) basically disappearing and showing the background. This happens until you lock the screen at which point you can see the model solidify briefly then when you unlock it reactivates and goes back to flickering.

    On a virtual device (genymotion) the models don't even appear.

    Everything works fine on iOS simulator.

    I'm using JDK that comes with Android Studio and compiling with 27.0.1 build tools for android. I haven't changed any project settings whatsoever but I did copy the example js files into a newly created react native project using react-native init as on android the sym linking doesn't work into the node_modules dir so it won't compile.

    Using master from github. From package.json:

    "dependencies": { "react": "16.3.1", "react-native": "0.55.4", "react-native-gl-model-view": "git+https://github.com/rastapasta/react-native-gl-model-view.git" },

    Same happens with current release.

    The only thing of note is that because react-native init uses an older gradle version I have to change this project's build.gradle lines 32, 33 from implementation.....to compile....

    Any clues on what could be causing this issue?

    opened by shokimble 3
  • obj file doesn't show up in apk version

    obj file doesn't show up in apk version

    Hi, this project might be stopped but I need help. The 3D model show up normally after I create assets folder and copy my obj file to it in develope mode. But after eas build (expo - apk) ,it does not show up. I think eas does not include assets folder that I made.

    So I tried to save the file using file system library. But it look like directory path never work.

    Is there an any way to load .obj file from file-system not in assets folder? My application should be used in internal network system (no internet) so I can't use uri.

    opened by hhj0988a 2
  • Bump cocoapods-downloader from 1.5.1 to 1.6.3 in /example

    Bump cocoapods-downloader from 1.5.1 to 1.6.3 in /example

    Bumps cocoapods-downloader from 1.5.1 to 1.6.3.

    Release notes

    Sourced from cocoapods-downloader's releases.

    1.6.3

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.2

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.1

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.0

    Enhancements
    • None.
    Bug Fixes
    • Adds a check for command injections in the input for hg and git.
      orta #124
    Changelog

    Sourced from cocoapods-downloader's changelog.

    1.6.3 (2022-04-01)

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.2 (2022-03-28)

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.1 (2022-03-23)

    Enhancements
    • None.
    Bug Fixes
    • None.

    1.6.0 (2022-03-22)

    Enhancements
    • None.
    Bug Fixes
    • Adds a check for command injections in the input for hg and git.
      orta #124
    Commits
    • c03e2ed Release 1.6.3
    • f75bccc Disable Bazaar tests due to macOS 12.3 not including python2
    • 52a0d54 Merge pull request #128 from CocoaPods/validate_before_dl
    • d27c983 Ensure that the git pre-processor doesn't accidentally bail also
    • 3adfe1f [CHANGELOG] Add empty Master section
    • 591167a Release 1.6.2
    • d2564c3 Merge pull request #127 from CocoaPods/validate_before_dl
    • 99fec61 Switches where we check for invalid input, to move it inside the download fun...
    • 96679f2 [CHANGELOG] Add empty Master section
    • 3a7c54b Release 1.6.1
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies ruby 
    opened by dependabot[bot] 0
  • Not compatible with React-Native 0.65.1

    Not compatible with React-Native 0.65.1

    My app is comfortable with RN- 0.63.4 But once I have upgrade RN lib to 0.65.1, facing issue in android with error message "ConnectAnimatedNodes: Animated node with tag does not exist" when using useNativeDriver is true.

    bug feedback 
    opened by npjoge 3
  • Display of some 3D models and some are not

    Display of some 3D models and some are not

    hello there, i am working with the library for a while, some of the obj models are working perfectlly but some are not displaied at all. i tested all models with external software and the files are good. is there any specific thing that i suppose to look for? thank you

    opened by nirbz 0
  • Cannot display 3d model that was downloaded and stored in DocumentDir in android

    Cannot display 3d model that was downloaded and stored in DocumentDir in android

    hi team, I have flow:

    Download 3d model to DocumentDir folder (both iOS and Android) Use path to model as uri to display iOS: display ok Android: nothing is display. Android already was added permission:

    object path in android: .../[applicationId]/files/RNFetchBlobTmp_masl1dpa7zafv1bz3k6lu.obj

    Can you check this issue?

    opened by ghost 0
Releases(v1.6)
  • v1.6(Mar 28, 2020)

    • Big thanks to @reyalpsirc for implementing the usage of TextureViews, allowing transparent backgrounds and correct zIndexing on Android
    • Unifying rotation degree handling on Android&iOS
    Source code(tar.gz)
    Source code(zip)
  • v1.5(Nov 1, 2019)

    • Adapted Android build to recent RN versions
    • Fixed texture flickering on Android (thanks to @JavanPoirier & co!)
    • Updated example to RN 0.61.3
    • Updated README to reflect modern setup
    Source code(tar.gz)
    Source code(zip)
  • v1.4(Apr 10, 2019)

    • Support for remote models and textures
    • Support of flipTexture flag
    • Fix for tint on iOS
    • No more first frame flickering on Android

    Breaking change: new format for model/texture property (based on URI scheme, see documentation)

    Kudos to @Cawfree and @PatriceVignola :beers:

    Source code(tar.gz)
    Source code(zip)
  • v1.3.2(Apr 3, 2018)

    • tint {r, g, b, a} tints the texture or set the color of the model if there is no texture
    • transparent background of the GLView - all the power to the React side of things!

    All kudos directed to @PatriceVignola !

    Source code(tar.gz)
    Source code(zip)
  • v1.2(Mar 26, 2018)

  • v1.1(Jan 2, 2018)

  • v1.0.1(Apr 18, 2017)

  • v1.0(Apr 16, 2017)

    Welcome to react-native-gl-model-view!

    A straight forward bridge to GLView to display 3D models in react-native.

    Giving developers full animation control over 3D models via the Animated API native driver.

    Enjoy and I'm looking forward to your feedback and PRs!

    Source code(tar.gz)
    Source code(zip)
Owner
Michael Straßburger
Full Stack • Passionate • Code Ninja Make code, not war.
Michael Straßburger
Standard set of easy to use animations and declarative transitions for React Native

react-native-animatable Declarative transitions and animations for React Native Installation $ npm install react-native-animatable --save Usage To ani

Joel Arvidsson 9.4k Jan 3, 2023
React Native component for animated sprite and tweening

The React Native Animated Sprite react-native-animated-sprite (RNAS) package is a feature rich declarative component for animation, tweening, and drag

null 131 Jan 4, 2023
🎞️ Animated API math extension - approximates sin, cos and tan by combining Animated Nodes with full Native Driver support

react-native-animated-math An Animated API math extension - implementing sine, cosine, tangent and others as AnimatedNodes. All calculations are imple

Michael Straßburger 74 Dec 7, 2022
Experimental implementation of high performance interactable views in React Native

Interactable react-native-interactable LOOKING FOR A MAINTAINER We love this project, but currently we don’t have enough time to work on it. So we are

Wix.com 5.2k Dec 29, 2022
React Native's Animated library reimplemented

React Native's Animated library reimplemented Reanimated 2 is here! Check out our documentation page for more information React Native Reanimated prov

Software Mansion 6.8k Jan 2, 2023
Create magical move transitions between scenes in react-native 🐰🎩✨

Important react-native-shared-element update! A follow up project called react-native-shared-element has been created which can be considered the succ

Hein Rutjes 980 Nov 27, 2022
React-native-animatable-flatlist: Ready to go animatable flatlist based on reanimated 2

react-native-animatable-flatlist ready to go animatable flatlist based on reanimated 2 Features Hooks support Not opinionaded, Fully extendable Suppor

kubilay 5 Apr 27, 2022
Legend Motion is a declarative animations library for React Native, to make it easy to transition between styles without needing to manage animations.

Legend Motion is a declarative animations library for React Native, to make it easy to transition between styles without needing to manage animations.

Legend 199 Dec 29, 2022
Gesture based interruptible animation samples in React Native.

Gesture based interruptible animation samples in React Native.

Ashu 178 Dec 28, 2022
A simple animation for react-native

Simple structure Simple and performance Easy to start a new project Support more platform: android, ios and web Techincal react-native: lets you creat

null 9 Nov 6, 2022
Modern Animated UI Library For React-Native

react-native-ui-toolkit UI Toolkit For React Native Installation npm install react-native-ui-toolkit Usage import { ScrollableHeader } from "react-nat

Tariq Khan 3 Sep 14, 2022
React Native Fiesta - A set of celebration animations

?? A set of celebration animations powered by @shopify/react-native-skia. Engage more with your users by celebrating in your React Native application.

Mateo Guzmán 174 Jan 8, 2023
React-animate-style - A react integration of animate.css (animate.style)

react-animate-style Easy animate react app with animate.css library Install With

null 2 Jul 30, 2022
Rubik's cube solver (2x2, 3x3) with color detection, built with react-native, Swift, Obj-C for iOS only

Rubikus A full blown React-native iOS app that can scan 2x2x2 and 3x3x3 Rubik's cubes using your phone's camera, render it in 3D and then provide a so

Alexander 7 Aug 29, 2022
Draggable and Resizable component running at 60FPS using React Native Reanimated v2

reanimated-drag-resize Draggable and Resizable React Native Component running at 60FPS using React Native Reanimated v2 Main Dependencies react-native

Fateh Farooqui 39 Dec 28, 2022
React Native button component. Awesome Button is a 3D at 60fps, progress enabled, social ready, extendable, production ready component that renders an awesome animated set of UI buttons. 📱

React Native <AwesomeButton /> react-native-really-awesome-button is a performant, extendable, production ready React Native component that renders an

Rafael Caferati 1.1k Dec 28, 2022
A android like toast for android and ios, android use native toast, ios use UIView+Toast

React Native Toast (remobile) A android like toast for react-native support for ios and android Installation npm install @remobile/react-native-toast

YunJiang.Fang 345 Nov 11, 2022
React Native bridge to the Google Analytics libraries on both iOS and Android.

Deprecation notice On November 13th 2018 Google issued the following statement: We want to let you know that in October 2019 we will begin to sunset o

Idéhub 1.2k Dec 9, 2022
React content transition slider. Awesome Slider is a 60fps, light weight, performant component that renders an animated set of production ready UI general purpose sliders. 🖥️ 📱

React Awesome Slider v3 [NEW fullpage navigation HOC] react-awesome-slider is a 60fps, extendable, highly customizable, production ready React Compone

Rafael Caferati 2.6k Jan 3, 2023
React native Library for creating Local DB models

React Native DB Models This wrapper is built on top of React Native Store and provides a better and improved Database layer for asynchronous DB transa

Rishabh Mehan 173 Jul 24, 2022