Skia
rust-analyzer
Our great sponsors
Skia | rust-analyzer | |
---|---|---|
55 | 132 | |
8,515 | 13,479 | |
2.1% | 2.4% | |
9.7 | 10.0 | |
1 day ago | 1 day ago | |
C++ | Rust | |
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
-
Skia VS nitro-gl - a user suggested alternative
2 projects | 21 Aug 2023
- The Future of the Web Is VNC
- Cairo – Open-Source 2D Graphics Layer/API with Fonts and Many Back-Ends
-
Lottie under the hood
Actually, that's not entirely accurate. The lottie-web library itself doesn't support rendering to WebGL. However, there is a package called canvaskit-wasm that wraps Skia (a graphics engine) with WebAssembly (wasm). This package includes a module called skottie which supports rendering animations into a WebGL surface. However, there is a drawback with this approach: using wasm requires loading a relatively large package, and it's uncertain whether all features are supported correctly, as the official compatibility table that tracks lottie support on different platforms does not include skottie.
-
Widely-used graphics library
Skia is pretty great if you can get it running.
- Vivaldi 6.0 Web Browser Introduces Tab Workspaces and Custom Icons
- 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
rust-analyzer
-
Cranelift code generation comes to Rust
go build 3.62s user 0.76s system 171% cpu 2.545 total
I was looking forward to parallel front-end[4], but I have not seen any improvement for these small changes.
-
A guide on Neovim's LSP client
For example, intelephense can show diagnostics in real time, there is no need to save the file to get new diagnostics. But rust-analyzer, the language server for rust, can only update diagnostics after saving the file.
-
Top 10 Rusty Repositories for you to start your Open Source Journey
6. Rust Analyzer
-
LSP could have been better
Agree this is not a problem. rust-analyzer also includes a boatload of custom extensions. Here's how "query type of selected expression" works, for example:
https://github.com/rust-lang/rust-analyzer/blob/master/docs/...
For example: https://github.com/rust-lang/rust-analyzer/blob/master/docs/...
> If you create an LSP, it will work best in VS Code.
Any editor can work just as well as (or even better than) VS Code.
-
Mastering Emacs: What's new in Emacs 29.1
I am not a Rust dev. It surely looks great.
However, from what I understand it seems to supply just a parser separate from the Rust compiler (https://github.com/rust-lang/rust-analyzer/tree/master/crate...) trying to keep up with Rust‘s development. So, in principle, it could have been just another treesitter parser plugin, too.
So, again, the LSP framework does not directly provide any magical benefit over a static parsing framework. All the semantic analysis capabilities stem from a good parser.
-
rust-analyzer significantly slowing down compilation
You may file issue at github rust-analyzer
-
Any new Opensource projects in (rust) looking for contributors. I want to start my journey as an OSS contributor.
I've contributed to rust-analyzer and nushell and had a great experience in both! Tons of open issues with a huge range of difficulties, and the maintainers are really helpful in providing hints to get started.
-
I want to contribute in a big project
For something more concrete you can try and ask around on their zulip or browse their issues.
-
Microsoft is rewriting core Windows libraries in Rust
More info here: https://rust-analyzer.github.io/ and here: https://rust-analyzer.github.io/manual.html#installation
What are some alternatives?
bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
vscode-rust - Rust extension for Visual Studio Code
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
Ogre 3D - scene-oriented, flexible 3D engine (C++, Python, C#, Java)
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
Lottie for Android, iOS, and React Native - Render After Effects animations natively on Android and iOS, Web, and React Native
intellij-rust - Rust plugin for the IntelliJ Platform
canvas - High performance skia binding to Node.js. Zero system dependencies and pure npm packages without any postinstall scripts nor node-gyp.
OpenSceneGraph - OpenSceneGraph git repository
Open-Source Vulkan C++ API - Open-Source Vulkan C++ API