Google Summer of Code 2023 is accepting applications with WasmEdge as a featured open source project with two available projects. By participating, you'll have the opportunity to work on WasmEdge and contribute to the evolution of cloud computing.
GSoC is a global, online mentoring program that introduces new contributors to open source software development. Through GSoC, you will gain valuable experience in real-world software development while being compensated for your efforts and time! Don't miss the opportunity to make a significant impact in cloud computing and gain experience as a software developer.
A brief introduction to WasmEdge
WasmEdge is a WebAssembly runtime that is specifically optimized for server-side and cloud-native applications. It provides many unique features that crucial for cloud computing. For example, it supports
- The complete WebAssembly spec as well as emerging specs such as threading, GC, and component model.
- Advanced networking (eg HTTP/S clients and servers, database connections, messaging queue connections)
- AI inference based on popular frameworks, such as Tensorflow, OpenVino, PyTorch
- Extensive SDKs to embed WasmEdge into existing applications written in other languages.
Furthermore, WasmEdge provides a flexible plug-in architecture that allows developers to add more functionalities to it and take advantage of its many integrations and distribution channels through extensive open source partnerships. And yes, we have a plug-in project for GSoC 2023. dDiscover the full potential of WasmEdge with our technical highlights.
WasmEdge is supported by major developer tools and deployment platforms in the cloud native space. For example, WasmEdge is bundled and distributed with Docker Desktop reaching over 10 million developers. WasmEdge is the default WebAssembly runtime on Fedora, Red Hat Linux, and the OpenShift container platform.
Join us to build the future of the cloud-native technology stack!
- Add a zlib plugin for WasmEdge
The zlib is required for compiling and running many existing C/C++/Rust apps in Wasm. Most noticeably, it is required for the Python port to Wasm. The VMWare Wasm Labs team is using a zlib port from Singlestore in their Python Wasm runtime. So, zlib support is very much preferred.
In WasmEdge, the zlib support could be implemented in a way of the plug-in system. This way, any existing zlib apps can be compiled to Wasm and runs inside WasmEdge. You could write plug-in in C, C++ and Rust. The mentee we’re looking for should have a working knowledge of C, C++ or Rust and willingness to learn and understand the WasmEdge’s plugin system.
- Complete the serialization for WasmEdge
WasmEdge is a WebAssembly runtime in both interpreter and ahead-of-time mode. However, WasmEdge only supports the binary format for the input WebAssembly file. To help the text format WebAssembly loader feature in the future, the implementation of serializing a WebAssembly module is necessary. In this mentorship, the mentee should complete the serialization functions already in the
dev/serialize branch of the
The mentee we’re looking for should have a working knowledge of C, C++ and WebAssembly.
Tips for applying for GSoC with WasmEdge
- Submit a well-written resume to give mentors a quick understanding of your background.
- Including the milestone and timeline of your work plan for the issue in your proposal help mentors know your solution.
- Use the WasmEdge book to get started with WasmEdge.
- Elaborate and discuss your idea with the mentors under the original GitHub issues.
The next step is to follow the GSoC’s guidelines to apply for WasmEdge’s projects before April 4. If you have any questions, feel free to join our Discord. We look forward to hearing from you.