Skia
Lottie for Android, iOS, and React Native
Our great sponsors
Skia | Lottie for Android, iOS, and React Native | |
---|---|---|
48 | 38 | |
7,333 | 33,718 | |
2.1% | 0.5% | |
10.0 | 9.2 | |
8 days ago | 27 days ago | |
C++ | Java | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Skia
- Leveraging Rust and the GPU to render user interfaces at 120 FPS
- How important is avoiding Blink/Chromium to you? And if not at all, why?
-
Graphic Library for C
There’s also Skia by Google. Used by Android and Google Chrome.
-
Ask HN: Is WASM (WebAssembly) getting adoption in real use cases?
Not specially something that you cannot do without WASM but at $WORK we are using a WASM build of Skia [0] to render canvas from nodejs.
Why use WASM ? Because we wanted to stay close to our stack (ie. calling wasm from nodejs). Do it work ? Yes, memory consumption is quite heavy though (each WASM module have its own heap that can quickly grow).
However we are looking to directly use Skia now and avoid the overhead of WASM so i think its a nice solution in the beginning but you might want to ditch it later on.
[0]: https://github.com/google/skia/tree/main/modules/canvaskit
-
SIMD intrinsics and the possibility of a standard library solution
I use SkVx from Skia. It uses compilers' vector extensions and few platform-specific intrinsics. If no vector extension available (e.g. msvc), a scalar implementation is provided in the hope that compiler can vectorize it.
-
Can you develop any type of desktop app with Flutter?
Regarding compiling to JS, you can compile dart to JS however when running Flutter on mobile platforms such as iOS or Android, you're not compiling to JS but instead you're using Dart to draw widgets on the screen via Flutter engine which uses a cross-platform graphics engine under the hood called Skia. If you're running on web on the other hand, your dart code would compile to vector graphics rendered within a canvas element in pure HTML.
-
Build desktop applications with JetBrains' new UI style and Compose Desktop
It built on a render framework named skia, JetBrains create a kotlin mapping which named skiko for it.
-
In One Minute : Flutter
Flutter applications are written in the Dart programming language, and can connect to platform languages such as Java, Kotlin, Swift, and Objective-C. Also, thanks to ffi support, it is possible to interact with the C code directly . Flutter itself is built with C, C++, Dart, and Skia (a 2D rendering engine).
-
JetBrains invites developers to join the Fleet Public Preview Program
Fleet does not use Compose, but it does use Skiko[1], which also provides binding for Skia[2] (the native graphics library also used by Chrome & Flutter).
The main difference between the libraries is that Skija provides Java/JVM bindings for Skia, whereas Skiko provides Kotlin bindings for Kotlin/JVM, Kotlin/JS, and Kotlin/Native targets. Of course Skiko's Kotlin/JVM bindings can be used with other JVM languages, not just with Kotlin.
-
Opinions on canvas(or canvas like capabilities) in React Native
RN Skia: https://github.com/Shopify/react-native-skia Skia itself: https://skia.org/
Lottie for Android, iOS, and React Native
-
Ask HN: Are there things that Flash did that we still can’t do with today’s web?
Lottie[1], an Adobe After Effects plugin, fills a gap in vector animation authoring and is quite widely used (primarily in mobile applications but also works on the web, Discord for example supports them for stickers).
It's a pity SVG animation authoring tools never eventuated since it's an underutilized native format.
[1] (ignore the GIF-converted examples, the originals are lightweight and vector-based) https://airbnb.io/lottie/
-
Oldhead here - what has replaced Flash for highly interactive, complex animated content?
Unity can export to WebGL/WASM, so that's one option if you're making some kind of heavy interactive experience and you don't mind waiting for it to load. For just animations there are tools like Lottie that can help. I think things are generally a lot more fragmented than they were in the Flash/Shockwave days though.
-
Skottie Now Available for SkiaSharp
Uno Platform contributed support for the Skottie component in SkiaSharp (a .NET binding for Skia). This addition now allows for any application using SkiaSharp to render Lottie animations and provide engaging user experiences on all the platforms already supported by Uno Platform. This new SkiaSharp preview update also provides support for Uno Platform WinUI targets as well as .NET 6 for Mobile
-
Top 10 Android Libraries to boost your development in 2022
GitHub: https://github.com/airbnb/lottie-android
-
I'm Matthew, a software engineer at Duolingo, here to answer… any questions you'd like to send my way. AMA!
We use Lottie to render our animations! I believe the animators use After Effects to create them. Thanks for the love! I'll pass them to our animators :)
-
What are the most common used (3rd party) libraries and frameworks used in Android development?
Lottie/RLottie for animated assets (or AnimatedVectorDrawable)
-
Hacker News top posts: Dec 21, 2021
Lottie – Use after effects animations in web and native apps\ (68 comments)
-
Lottie – use After Effects animations in web and native apps
They should add the Flutter package for it on the "third party platform" page! :) (https://airbnb.io/lottie/#/other-platforms)
-
18 amazing 🤩 GitHub repositories that will help you 🪄 make a beautiful project
airbnb / lottie-web Render After Effects animations natively on Web, Android and iOS, and React Native. http://airbnb.io/lottie/
What are some alternatives?
bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
GLFW - A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
Atomic Game Engine - The Atomic Game Engine is a multi-platform 2D and 3D engine with a consistent API in C++, C#, JavaScript, and TypeScript
android-page-curl - Page Curl for Android
Ogre 3D - scene-oriented, flexible 3D engine (C++, Python, C#, Java)
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
shimmer-android - An easy, flexible way to add a shimmering effect to any view in an Android app.
OpenSceneGraph - OpenSceneGraph git repository
Open-Source Vulkan C++ API - Open-Source Vulkan C++ API
canvas - High performance skia binding to Node.js. Zero system dependencies and pure npm packages without any postinstall scripts nor node-gyp.
DirectXTK - The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++