

GitHub - prscX/react-native-spruce: React Native Bridge for Spruce Animation Lib...
source link: https://github.com/prscX/react-native-spruce
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md
ReactNative Spruce - (Android & iOS): Deprecated
Due to time constraint, this library is deprecated and not maintained anymore, You can still use this library.
If this project has helped you out, please support us with a star
Spruce is a lightweight animation library that helps choreograph the animations on the screen. With so many different animation libraries out there, developers need to make sure that each view is animating at the appropriate time. Spruce can help designers request complex multi-view animations and not have the developers cringe at the prototype.
It provides a React Native Bridge around native spruce library. Here is a quick example of how you can Spruce up your screens!
Note: Currently on iOS it is not supported due to unavailable of Spruce Objective-C wrappers, please refer issue: 101
Getting started
$ npm install react-native-spruce --save
$ react-native link react-native-spruce
-
Android
- Please copy below snippet in your app
build.gradle
file:
- Please copy below snippet in your app
buildscript {
repositories {
jcenter()
google()
...
}
}
allprojects {
repositories {
mavenLocal()
jcenter()
google()
...
}
}
Note: Android SDK 27 > is supported
Usage
import { Spruce, CorneredSort, DefaultAnimations } from "react-native-spruce"; // TODO: What to do with the module? render () { let sortWith = new CorneredSort(100); let animateWith = DefaultAnimations.shrinkAnimator(1000) <Spruce sortWith={sortWith} animateWith={animateWith} animator={{ propertyName: "translationX", values: [5000, 0], duration: 800 }}> <View /> </Spruce> }
Using a SortFunction
Luckily, RNSpruce comes with 8 SortFunction
implementations with a wide open possibility to make more! Use the SortFunction
to change the order in which views animate. Consider the following example:
let sort = new LinearSort(/*interObjectDelay=*/100L, /*reversed=*/false, LinearSort.Direction.TOP_TO_BOTTOM);
To make sure that developers can use RNSpruce out of the box, we included about 8 stock SortFunction
implementations. These are some of the main functions we use at WillowTree and are so excited to see what others come up with!
DefaultSort
let sort = new DefaultSort(/*interObjectDelay=*/100L);
LinearSort
let sort = new LinearSort(/*interObjectDelay=*/100L, /*reversed=*/false, LinearSort.Direction.TOP_TO_BOTTOM);
CorneredSort
let sort = new CorneredSort(/*interObjectDelay=*/100L, /*reversed=*/false, CorneredSort.Corner.TOP_LEFT);
RadialSort
let sort = new RadialSort(/*interObjectDelay=*/100L, /*reversed=*/false, RadialSort.Position.TOP_LEFT);
RandomSort
let sort = new RandomSort(/*interObjectDelay=*/100L);
InlineSort
let sort = new InlineSort(/*interObjectDelay=*/100L, /*reversed=*/false, LinearSort.Direction.TOP_TO_BOTTOM);
ContinousSort
let sort = new ContinousSort(/*interObjectDelay=*/100L, /*reversed=*/false, ContinousSort.Position.TOP_LEFT);
Stock Animators
To make everybody's lives easier, the stock animators perform basic View animations that a lot of apps use today. Mix and match these animators to get the core motion you are looking for.
DefaultAnimations.growAnimator(duration:number)
DefaultAnimations.shrinkAnimator(duration:number)
DefaultAnimations.fadeAwayAnimator(duration:number)
DefaultAnimations.fadeInAnimator(duration:number)
DefaultAnimations.spinAnimator(duration:number)
Experiment which ones work for you! If you think of anymore feel free to add them to the library yourself!
Credits
How to contribute
Have an idea? Found a bug? Please raise to ISSUES. Contributions are welcome and are greatly appreciated! Every little bit helps, and credit will always be given.
Where is this library used?
If you are using this library in one of your projects, add it in this list below.
License
This library is provided under the Apache 2 License.
RNSpruce @ prscX
Support my projects
I open-source almost everything I can, and I try to reply everyone needing help using these projects. Obviously, this takes time. You can integrate and use these projects in your applications for free! You can even change the source code and redistribute (even resell it).
However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it:
-
Starring and sharing the projects you like
-
If you're feeling especially charitable, please follow prscX on GitHub.
Thanks!
prscX.github.io
</ Pranav >
Recommend
-
38
Spruce is a tiny but powerful open-source social networking platform made with Node.js and MongoDB Deployed on an Amazon EC2 ins...
-
38
Spruce is a tiny but powerful open-source social networking platform made with Node.js and MongoDB. Deployed on an Amazon EC...
-
32
Spruce up your GR visualizations in Julia ...
-
26
Simple graphs are essential visual tools for data analysis. If you are starting to learn how to make visualizations in Python, there are small adjustments to your graph parameters that will make them stand out. To get sta...
-
11
Pluralsight celebrates 25 years of JavaScript – a good opportunity to spruce up your knowledge
-
10
react-native-zoom-bridge React-native bridge for ZoomUs video conference calls android & iOS SDK's (as of Jul 14, 2020 version 4.6.21666.0428) Getting started $ npm install react-native-zoom-bridge --save
-
7
react-native-dialogflow (react-native-api-ai) A React-Native Bridge for the Google Dialogflow AI SDK. Support for iOS 10+ and Android! Dialogflow is a powerful tool for building delightful and natural conversational exp...
-
15
Spotify’s new ‘Enhance’ feature will spruce up your playlists with recommended songs Get new songs mixed into your existing playlists ...
-
3
开源软件公司 Spruce 将如何实现用以太坊账户登录传统 Web2 服务?ETH中文网2021-10-04热度: 6157用户通过 WalletConnect 签名执行基于以太...
-
8
Engineering Manager You will be responsible for supporting the engineering team and optimizing engineering contributions to further the company mission. This includes resource planning,...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK