-
Calling native functions from JavaScript
WasmEdge enables JavaScript to call native functions in shared libraries. In my previous articles, I explained why and how to run JavaScript programs in a WebAssembly sandbox. I also discussed how to create custom JavaScript APIs for WasmEdge using Rust. However, in order to fully access the underlying system's OS and hardware features, we sometimes need to create JavaScript APIs for C-based native functions. That is, when a JavaScript program calls the pre-defined function, WasmEdge will pass it to a native shared library on the OS for execution.…
-
Creating high-performance JavaScript APIs using Rust
WasmEdge brings together Rust’s performance and JavaScript’s ease of use In my previous article, I discussed how to embed JavaScript code into a Rust program. However, for JavaScript developers, the need is often the opposite – to incorporate Rust functions into JavaScript APIs. That enables developers to write programs in “pure JavaScript” and yet still take advantage of the high performance Rust functions. With the WasmEdge Runtime, you can do exactly that.…
-
Incorporating JavaScript into a Rust app
WasmEdge brings together Rust’s performance and JavaScript’s ease of use In my previous article, I discussed how to run JavaScript programs in a WebAssembly sandbox. The WasmEdge runtime provides a lightweight, high-performance, and OCI compliant “container” for cloud-native JavaScript applications. However, JavaScript is a “slow” language. The reason to use JavaScript is mostly due to its ease of use and developer productivity, especially for beginner developers. WebAssembly, on the other hand, is capable of running high-performance applications written in languages such as Rust.…
-
WebAssembly Serverless Functions in AWS Lambda
Serverless functions save developers a ton of trouble managing the backend infrastructure. It also simplifies the development process as developers only need to focus on the business logic. This article is a step-by-step guide on how to write and deploy your own WebAssembly serverless functions on AWS Lambda, Amazon's serverless computing platform. In our demo, WebAssembly functions are executed with the WasmEdge runtime. The figure below shows the overall architecture of our solution.…
-
😎 WasmEdge 0.8.2 is released. Networking support, Rust SDK, better compatibility and more.
WasmEdge 0.8.2 is finally released. Better cross-platform compatibility. Run WasmEdge applications on Mac OS X (Intel & M1), Windows 10, as well as IoT devices with ARM 32-bit chips. Networking support. Make network requests and run an HTTP server from your WasmEdge application. New and improved APIs. Embed WasmEdge functions in C, Rust, and Golang applications. Generic binary output for WasmEdge’s AoT compiler. Take advantage of AOT performance enhancements in cloud native platforms.…
ProductWasmEdgeWebAssemblyRustServerlesscloud computingSocketCNCF
-
Running JavaScript in WebAssembly with WasmEdge
WebAssembly started as a “JavaScript alternative for browsers”. The idea is to run high-performance applications compiled from languages like C/C++ or Rust safely in browsers. In the browser, WebAssembly runs side by side with JavaScript. Figure 1. WebAssembly and JavaScript in the browser. As WebAssembly is increasingly used in the cloud, it is now a universal runtime for cloud-native applications. Compared with Docker-like application containers, WebAssembly runtimes achieve higher performance with lower resource consumption.…
-
🤖 Contribute to the WasmEdge Project via the CNCF LFX Mentorship Fall Term 2021
Contribute to the WasmEdge project. Make your mark in Open Source, and earn a stipend of $3000 to $6600! WasmEdge is a cloud-native WebAssembly runtime hosted by the CNCF. It is widely used in edge computing, automotive, Jamstack, serverless, SaaS, service mesh, and even blockchain applications. WasmEdge is written in C++, and has SDKs for C/C++, Rust, Golang, and JavaScript. We welcome all types of contributions — code, docs, integrations, specs, examples!…