- Видео 43
- Просмотров 824 459
Reactiive
Италия
Добавлен 8 май 2021
Hi, I'm Enzo. On this channel I'll try to bring you as much content about React Native as often as possible.
Don't worry all the videos will be accompanied by my cute Italian accent!
For any doubt or advice contact me!
Don't worry all the videos will be accompanied by my cute Italian accent!
For any doubt or advice contact me!
Animated Blur Cards with React Native (Skia)
Building custom lists is always fun. In this tutorial, we'll discover how to achieve a Story List UI animation by using just React Native Reanimated.
My React Native course: reanimate.dev
Support me on Patreon: patreon.com/reactiive
Twitter: reactiive_
Recommended tutorials before this one:
- Custom Animated Loader with Skia: ruclips.net/video/7pCiGUrJuow/видео.html
- Exploring Interpolate: ruclips.net/video/8_hvNoZJsc8/видео.html
Source code: github.com/enzomanuelmangano/exploring-skia/tree/main/blur-cards
Chapters:
00:00 Introduction
00:46 The background RadialGradient
05:38 Here's the plan
06:55 Handling the initial state
09:35 The 3D state (end state)
15:58 The Blur effect
20:5...
My React Native course: reanimate.dev
Support me on Patreon: patreon.com/reactiive
Twitter: reactiive_
Recommended tutorials before this one:
- Custom Animated Loader with Skia: ruclips.net/video/7pCiGUrJuow/видео.html
- Exploring Interpolate: ruclips.net/video/8_hvNoZJsc8/видео.html
Source code: github.com/enzomanuelmangano/exploring-skia/tree/main/blur-cards
Chapters:
00:00 Introduction
00:46 The background RadialGradient
05:38 Here's the plan
06:55 Handling the initial state
09:35 The 3D state (end state)
15:58 The Blur effect
20:5...
Просмотров: 2 410
Видео
Animated Loader with React Native (Skia)
Просмотров 2,5 тыс.Месяц назад
Creating animated custom loaders seems like a simple task. However, this little tiny component can be really tricky if you don't know which tools to use. In this tutorial, we'll solve this problem using both Reanimated and React Native Skia. As always, we'll start with an empty Expo project :) My React Native animations course: reanimate.dev Patreon: patreon.com/reactiive Twitter: r...
Animated Bar Chart with React Native (Reanimated)
Просмотров 2,6 тыс.2 месяца назад
Have you ever felt the need to keep track of the pages you view on an Onboarding? Here it comes in handy to know how to make a custom pager from scratch. In this tutorial, we'll do exactly that by using Reanimated. My React Native course: reanimate.dev Support me on Patreon: patreon.com/reactiive Twitter: reactiive_ Animate with Reanimated Playlist: ruclips.net/video/yz9E10Dq8Bg/вид...
Pager Dots Animation with React Native (Reanimated)
Просмотров 3 тыс.2 месяца назад
Have you ever felt the need to keep track of the pages you view on an Onboarding? Here it comes in handy to know how to make a custom pager from scratch. In this tutorial, we'll do exactly that by using Reanimated. My React Native course: www.reanimate.dev Support me on Patreon: patreon.com/reactiive Twitter: reactiive_ Animate with Reanimated Playlist: ruclips.net/video/yz9E10Dq8Bg...
Building a Story List UI with Reanimated (React Native)
Просмотров 6 тыс.3 месяца назад
Building custom lists is always fun. In this tutorial, we'll discover how to achieve a Story List UI animation by using just React Native Reanimated. My React Native course: www.reanimate.dev Support me on Patreon: patreon.com/reactiive Twitter: reactiive_ Recommended tutorials before this one: - Exploring Interpolate: ruclips.net/video/8_hvNoZJsc8/видео.html - Advanced Onboarding: ...
The secret behind Jotai and MMKV (React Native)
Просмотров 3,9 тыс.3 месяца назад
In this tutorial, we'll learn how to solve two very common problems when creating React Native apps: 1. State Management - Jotai 2. Data Persistence - React Native MMKV In detail, we're going to combine these two packages together and use the atomWithMMKV. Checkbox Interactions Tutorial: ruclips.net/video/NPq_MFLnQrQ/видео.html My React Native animations course: www.reanimate.dev Support me on ...
Checkbox Interactions - The beauty of Layout Transitions (React Native Reanimated)
Просмотров 3,6 тыс.3 месяца назад
This tutorial unveils the simplicity and ease of using the Layout Transitions from Reanimated. In detail, as always, we're going to recreate this Checkbox Interactions demo from scratch starting with a lovely blank expo project. Do you like React Native animations? My React Native animations course: www.reanimate.dev Patreon: patreon.com/reactiive Twitter: reactiive_ Source code: gi...
Animated Stacked Cards - Exploring the interpolate function (React Native Reanimated)
Просмотров 4,5 тыс.3 месяца назад
In this tutorial, we're going to create from scratch a very simple yet powerful animation about Animated Stacked Cards. It will also be a perfect opportunity to dive deep into using the interpolate function from Reanimated. Do you like React Native animations? My React Native animations course: www.reanimate.dev Patreon: patreon.com/reactiive Twitter: reactiive_ Source code: github....
Animated Split Button in React Native (Reanimated)
Просмотров 4,9 тыс.4 месяца назад
This tutorial is about recreating a beautiful Split Button animation with Reanimated. Although the animation seems simple enough, it actually hides so many pitfalls. In this video, we are going to disassemble the animation piece by piece and gradually rebuild it from scratch. Do you like React Native animations? My React Native animations course: www.reanimate.dev Patreon: patreon.com/reactiive...
Announcing my React Native animations course: Reanimate.dev
Просмотров 2,1 тыс.5 месяцев назад
Yes, I know. It took me a while but I finally managed to prepare my animation course in React Native. You can access the course here: reanimate.dev/ Twitter announcement: reactiive_/status/1795080337522888858
Shake Animation in React Native (Reanimated)
Просмотров 6 тыс.7 месяцев назад
This tutorial is about a Shake animation made with Reanimated. Building it will be extremely helpful also from a didactic perspective because we're going to discover one by one, the most interesting high-order functions from Reanimated, such as: withTiming, withSequence, withRepeat, and withSpring. My React Native animations course: www.reanimate.dev Do you like React Native animations? Support...
Improving Tap Gestures in React Native
Просмотров 4,4 тыс.9 месяцев назад
Today we're going to unleash the power of Tap Gestures in React Native with Gesture Handler 👌 Checkout my React Native animations course: www.reanimate.dev Don't forget to leave a ⭐ Source code: github.com/enzomanuelmangano/what-about-gestures/tree/main/04-improve-tap-gestures Patreon: patreon.com/reactiive Twitter: reactiive_ Website: www.reactiive.io Chapters: 00:00 Introduction 0...
Custom Segmented Control in React Native (Reanimated)
Просмотров 9 тыс.10 месяцев назад
What's going on mobile devs? Today we're going to create together this awesome custom Segmented Control, deeply inspired by Steddy. Check out my React Native animations course: www.reanimate.dev Learn more about React Native: www.reactiive.io Support me on Patreon (you'll find a lot of extra animations): www.patreon.com/reactiive Follow me on Twitter: reactiive_ Checkout Steddy here...
Skeleton Animation in React Native with Moti
Просмотров 16 тыс.Год назад
Today, we're going to explore the potential of Moti by using the Skeleton component. The purpose of this tutorial is to cover the implementation of the Skeleton UX Pattern in React Native. You're going to learn how to create your own skeletons and how to reuse them across your apps! My React Native animations course: www.reanimate.dev Patreon: patreon.com/reactiive Twitter: reactiiv...
Animated Gradient in React Native (Skia)
Просмотров 9 тыс.Год назад
Today we are going to make a simple and powerful Linear Gradient animation by using the combination of React Native Skia and Reanimated. I think that this animation is a perfect example of how using the right tool greatly simplifies the work. My React Native animations course: www.reanimate.dev Do you like React Native animations? Support me on Patreon: patreon.com/reactiive Twitter: twitter.co...
Circular Carousel Animation in React Native (Reanimated)
Просмотров 12 тыс.Год назад
Circular Carousel Animation in React Native (Reanimated)
Dropdown Menu Animation in React Native (Reanimated 3)
Просмотров 12 тыс.Год назад
Dropdown Menu Animation in React Native (Reanimated 3)
Metaball Animation in React Native (Skia)
Просмотров 8 тыс.Год назад
Metaball Animation in React Native (Skia)
Creating a BottomSheet Backdrop in React Native
Просмотров 13 тыс.Год назад
Creating a BottomSheet Backdrop in React Native
Animated FlatList in React Native (Reanimated)
Просмотров 33 тыс.2 года назад
Animated FlatList in React Native (Reanimated)
Grid Magnification in React Native (Skia)
Просмотров 9 тыс.2 года назад
Grid Magnification in React Native (Skia)
Animated 3D Card in React Native (Reanimated and Skia)
Просмотров 19 тыс.2 года назад
Animated 3D Card in React Native (Reanimated and Skia)
Building a BottomSheet from scratch in React Native
Просмотров 94 тыс.2 года назад
Building a BottomSheet from scratch in React Native
The Secret Ingredient: Haptic Feedback (React Native)
Просмотров 8 тыс.2 года назад
The Secret Ingredient: Haptic Feedback (React Native)
The magic of Layout Animations in Reanimated (React Native)
Просмотров 32 тыс.2 года назад
The magic of Layout Animations in Reanimated (React Native)
Introduction to Gesture Handler 2 (React Native)
Просмотров 19 тыс.2 года назад
Introduction to Gesture Handler 2 (React Native)
Clock Loader Animation in React Native (Reanimated 2)
Просмотров 10 тыс.2 года назад
Clock Loader Animation in React Native (Reanimated 2)
Sliding Counter Animation in React Native (Reanimated 2)
Просмотров 12 тыс.2 года назад
Sliding Counter Animation in React Native (Reanimated 2)
Perspective Menu Animation in React Native with Reanimated 2
Просмотров 12 тыс.2 года назад
Perspective Menu Animation in React Native with Reanimated 2
Introduction to Animated API (React Native)
Просмотров 28 тыс.2 года назад
Introduction to Animated API (React Native)
This is by far the most interesting, the most explanatory, the most creative and the most step-by-step tutorial for bottom sheet I've came across. Thanks!
At 11:50 you made a crucial mistake, this callback runs on JS Thread and you should be using the `useAnimatedScrollHandler` from React Native Reanimated to run it directly the UI Thread (aka native side) and change FlatList to be an Animated.FlatList and modify the shared value inside the callback and keep everything on the UI Thread. Most probably Android is screaming in performance regression now :)
Hi Catalin, thanks a lot for pointing that out! Unfortunately while recording I missed that completely. In the latest videos fortunately I always used an Animated List with useScrollViewOffset or useAnimatedScrollHandler. I'll definitely fix the issue in the GitHub repo 🙌
Hi please make tutorial for react native music app transition
Do you have drag and drop item to react native flatlist?
I guess, react-native-gesture-handler keep updating, the code is using deprecated one.
It would be wonderful if implemented dot press functionilty to scroll its own screen, but amazing tutorial, thanks for sharing your wisdom with us
I doubt anybody can name a better tutorial for this.Thanks G.
0:24, i mean, bold claim. i have been able to make such thing with no js directly just html + css. maybe i just didn't quite get how you meant it but directly, just with modern css, this is totally possible
@@Cuwubiqof course it's possible on the web. But achieving this behavior on a native Android app with React Native can be quite challenging 👀
@@Reactiive yeah, thought you mean it some sort of that way, thanks for the explanation, wonderful work with the whole thing btw! shows how rnskia is so much more competent and robust. Incredible video, thanks for it!
amazing content, thank you from israel ! i would love to learn more about skia! can we add a text and views inside the blur cards of react-native on top of canvas of skia?
Thanks! Unfortunately we can't use react native components in a Skia Canvas but there are a lot of solutions (such as using Skia Text)
Great Work bro! 🎉 Amazing animation! 😃
This is awesome 🎇
Your tutorials are very practical for real world animations. Subtle small designs brings comfortable engagement.
Thanks for the feedback ❤
Hello there 👋 I hope you'll enjoy this tutorial 🎥 If you want to dive deeper into Skia, Reanimated, and Gesture Handler, this is the last month to enroll in my course: reanimate.dev/ Registration closes on November 8th and will reopen in 2025 👀
How to create a animated custom Drawer withe animated Bottom Tabs having same 4-5 items to toggle between. (My suggestion for new Video), because I loved loved your animation videos specially in TS.
Works like a charm! that you have the source code available in github aswell is awsome. Thx!
Outdated, doesnt work with v3
@@chorazytorpeda16 I recently made a new video about Layout animations with v3 ruclips.net/video/NPq_MFLnQrQ/видео.htmlsi=fl1MNJvtAfKmCDgl Although you can still use this one and replace layout=Layout with layout=LinearTransition and it will work as well. Hopefully this is helpful
There isn't much skia tutorials pls go on with them. Thanx👌
I was using React Native CLI and I faced some challanges with the Linear gradient. This should resolve the issue when using React Native CLI instead of Expo. Install react-native-linear-gradient: npm install react-native-linear-gradient Replace all instances of: import { LinearGradient } from 'expo-linear-gradient' with: import { LinearGradient } from 'react-native-linear-gradient' Files where the change is needed: node_modules/moti/src/skeleton/expo.tsx node_modules/moti/src/skeleton/skeleton.tsx node_modules/moti/src/skeleton/types.ts node_modules/moti/build/skeleton/expo.js
I appreciate your comment but you shouldn't update the node_modules since they get overwritten on each yarn/npm/bun install. To use Moti skeletons with react-native-linear-gradient I strongly recommend to follow moti's docs: moti.fyi/skeleton#option-2-react-native-linear-gradient
holy crap THANK YOU SO MUCH for providing a written version of this tutorial. you have NO idea how incredibly helpful that is for those of us who are hard of hearing (and also, just, like, really really bad at youtube tutorials)!!!!
it's crazy, I am new at react native but this Skia and Reanimated are revolutionary for react native animations otherwise it would be so hard to implement them and pretty sure not quite performant, it takes a lot of practice I guess to be good with these tools, thanks for this great tutorial
Great video! Learning so much, every video!
Thanks a lot for the feedback!
Sir kindly bring drawing, panting, animation etc complete skia playlist like you've made RN Reanimated.
Thanks for the feedback! I will 👀
Great tutorial that combines skia and reanimated ! Thank you !
Why are you using by startAnimated useDerivedValue and not useSharedValue? What's the difference. And how to know when I should use useDerived or useShared?
That's a great question! I use 'useSharedValue' for independent shared values, such as progress. However, 'useDerivedValue' is better suited for values that depend on others. For example, since 'startAnimated' is dependent on 'progress', you're essentially 'deriving' it from the 'progress' value and applying additional computations. Hopefully this helps!
@@ReactiiveYes. Thanks. So when I got it right. When Values depending on something then useDerived is the choice. And in all other cases useShared
@4:50 what extension are you using for code suggestions like that.
@@HaiderAli-oi5fm I'm using Cursor! It's a fork from vscode cursor.com
he is using cursor ide
@@AlbertoVasquez1 Thanks
Great tutorial. Never tried Skia. This makes me want to try it
@@ravindusha thanks! I made this tutorial because I think it's a great way to get used to Skia 👀
vscode theme please?
@@wisdomelue Tokyo Night
Very good tutorial 👏
Thank you, really appreciated!
Hello there 👋 I hope you'll enjoy this tutorial 🎥 If you want to dive deeper into Skia, Reanimated & Gesture Handler, check out my course with step-by-step tutorials starting from scratch reanimate.dev
is this optimize or not?
What do you mean by optimize?
@@Reactiive sir means is it lag or not when we use it in production ready React Native apps and i have one request plz make more video on Animated bottom tabs animation with skia or svgs thanks
@@hubesh716 of course it won't lagg but this always depends on how many tasks are active in the background 🫠. Also thanks for your feedback and your idea - I'll plan something about a custom bottom tab bar
please add gesture swap to this button
مبدع
🔝🔝🔝 best out there
Thanks!
Damn another day another great tutorial thanks I just have one question would it make any difference to pass paingEnabled instead of snapToAlignment and deceleration rate?
Same result
Hi Michel, in this specific use case it doesn't really matter 😁 However I like to use the decelerationRate because it's very easy to customize it (you don't have to pass a string i.e. "fast" but you can pass a number as well)
@@Reactiive Thanks 🫡
😮🤯
Awesome. But I’m curious, what does border curve do???
It handles corners smoothing (only iOS). Here you can check the difference between the default (circular) and continuous 😅 github.com/nativewind/nativewind/pull/904
Your work is amazing and love it
Super appreciated! Thank you 🎉
amazing as always
Brother i am waiting for more with Skia plz
@@hubesh716 I'm definitely planning Skia tutorials, i just need more time 😁
Thank you Enzo.
Goddamn man, the designer on an app i'm building have done this and I was wondering how I can do it. THANKS A LOT
@@michelmbili Glad to hear that 😁😁
Does passing a UI thread shared value via props move som load to the JS thread or is it just passed as a reference?
@@Norfeldt luckily it's passed as a reference 😎
Very useful 🔝 thank youuu
Beautifully explained
wow, really good work!
Great tutorials what would happen if create multiple instances of this BottomSheep components , i mean use it in varios page inside the app, it creates multiples instances or just one with different content inside?
That's a great question! This implementation will create multiple instances but you can easily overcome this problem by moving this component into a Custom Provider and managing it via Context APIs
@@Reactiiveyou’re right . Thanks for tour time 🤙🏼
Nice tutorial. Keep it up💯
import { StatusBar } from "expo-status-bar"; import { FlatList, StyleSheet, Text, View } from "react-native"; import CompListItem from "./components/CompListItems"; import { useSharedValue } from "react-native-reanimated"; const data = new Array(50).fill(0).map((_, index) => ({ id: index })); export default function App() { const viewableItems = useSharedValue([]); return ( <View style={styles.container}> <FlatList data={data} contentContainerStyle={{ paddingTop: 40 }} onViewableItemsChanged={({ viewableItems: vItems }) => { viewableItems.value = vItems; }} renderItem={({ item }) => { return <CompListItem item={item} viewableItems={viewableItems} />; }} /> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: "#fff", }, }); import { useEffect } from "react"; import { View } from "react-native"; import Animated, { useAnimatedStyle, withTiming, } from "react-native-reanimated"; export default function CompListItem({ item, viewableItems }) { const rStyle = useAnimatedStyle(() => { const isVisible = Boolean( viewableItems.value .filter((viewableItem) => viewableItem.isViewable) .find((viewableItem) => viewableItem.item.id === item.id) ); return { opacity: withTiming(isVisible ? 1 : 0), transform: [ { scale: withTiming(isVisible ? 1 : 0.6), }, ], }; }, []); // Use useEffect to ensure the component reacts to changes in viewableItems useEffect(() => { rStyle; // Trigger a re-render when viewableItems changes }, [viewableItems.value]); return ( <Animated.View style={[ { height: 80, width: "90%", backgroundColor: "red", marginTop: 15, borderRadius: 15, alignSelf: "center", }, rStyle, ]} ></Animated.View> ); } I had a problem with isViewable, I solved it this way.
Great Work , thank you 😍