First, run pnpm i
to install the dependencies.
Then, run pnpm dev
to start the development server and visit http://localhost:3000/
.
Documentation for WASIX
Home Page: https://wasix.org
License: MIT License
Create a Developer Guide for docs
Currently the functions are outdated in API References.
Example fd_write
In the documentation:
(@interface func (export "fd_write")
(param $fd $fd)
;;; List of scatter/gather vectors from which to retrieve data.
(param $iovs $ciovec_array)
(result $error (expected $size (error $errno)))
)
It should take 4 arguments and documentation should be updated:
Error while importing "wasix_32v1"."fd_write": incompatible import type. Expected Function(FunctionType { params: [I32, I32], results: [I32] }) but received Function(FunctionType { params: [I32, I32, I32, I32], results: [I32] })
Therefore, check all the functions and update all of the functions as there are new PRs like #3830 which would change some functions as well.
The wasix-axum example should mention about edge and that it should start on port 80. Need more context on this from @theduke
There are two extra wasm-bindgen
items at the end of pages/docs/language-guide/rust/patched-repos.mdx
. I've tried opening a PR, but it's not working for some reason, and the PR just appears on my fork.
Make Installation, Usage and Examples docs for C
It's not clear how a spawned process is assigned its environment using this API. Is it automatically inherited as a copy from the parent? What if some pruning or isolation is wanted?
Are there provisions for adjusting the pre-opened directories and mapped directories based on the namespace of the parent process? What if one wants to map certain directories from the parent's namespace into a certain location in the child?
Also, what do the values for the handling of stdin/stdout/stderr mean? How does one use them?
Write Installation, Usage with Examples for rust
The current hello-world program is too simple, and just shows the basic compilation of a rust based program. If users are already well versed to enter this ecosystem. Then we should have another entry hello-world program.
Hello world with a multithreaded API with JSON responses. This was suggested by a user from hn.
Update CI setup of Wasmer Edge
for the docs on the main branch.
Homepage requires us to showcase wasix
Requirements:
wasmer-setup
wasix
used (Companies) ?Decide on font with @syrusakbary ? use the Wasmer's current font ?
Like in wasi.dev write about the capability based security and other design decisions and patterns
Create API reference for Wasix docs using functions from Wasmer Wasix
Homepage requires us to showcase wasix
Requirements:
wasmer-setup
wasix
used (Companies) ?Decide on font with @syrusakbary ? use the Wasmer's current font ?
Hi.
I have some confusion about what WASIX is for and if it can be useful to me.
On the WASIX homepage you write
WASIX comes into play to bridge these gaps. It extends WASI with most of the missing POSIX features and is designed to run both in the server and the browser. WASIX provides full support for efficient multithreading, sockets (socket, bind, connect), [...]
But then, later on, under Rust Wasix usage
you state
Currenly, Wasix is only supported by the Wasmer runtime. So, you need to install the Wasmer (opens in a new tab) runtime.
Could you clarify how I would be compiling Rust code so that I can run it in a browser (modern Firefox, Chrome, Edge) and have full support for threads using std::thread::spawn
and synchronization primitives from std::sync
? All examples I found show how to compile and locally run Rust code on my machine via WASIX.
Thanks!
Setup the template for wasix
documentation with Nextra.
Make pages outline for wasix docs.
Pages would have:
cargo cargo-wasix
)WASIX_SDK
) (need help: Christoph/John/Sebastien)Add all patched repos and also mention about different branches for versions of repos on wasix's website.
Following instructions here https://wasix.org/docs/language-guide/rust/installation
in the last step, Check that the waist toolchain was installed correctly
rustup target list | grep wasix
Gives me nothing.
However running a search for toolchains does:
$ rustup toolchain list | grep wasix
wasix
I'm running cargo-wasix 0.1.20.
Are the instructions incorrect? Or is the installer failing to install a target called wasix
?
the changes are only in wasi.rs file and all about interfaces. there is no difference in functionality; why you didn't merge these changes to main repo?
Update new syscalls such as epoll in the API references
According to https://wasix.org/docs/language-guide/rust/installation, I only have to run cargo install cargo-wasix
. However, that does not install the rustup toolchain or targets, as the documentation suggests. In fact, running rustup toolchain list
afterwards does not show anything wasix-related.
My versions:
> cargo wasix --version
cargo-wasix 0.1.23
> cargo --version
cargo 1.74.0 (ecb9851af 2023-10-18)
> rustc --version
rustc 1.74.0 (79e9716c9 2023-11-13)
> rustup --version
rustup 1.26.0 (5af9b9484 2023-04-05)
There's an overflow in x direction on the body which results in a horizontal scrollbar.
The WASIX witx describes the http_request
function, but Wasmer (version 4.0.0-beta.3) doesn't seem to recognize it; neither with the default "wasix_32v1"
nor with the "wasix_http_client_v1"
module name that is referenced in the Wasmer codebase various times. The function also doesn't exist in the WASIX documentation, so is it implemented yet in Wasmer? If not, please prioritize it; making HTTP requests is literally *the* one WASI feature that I would love to see most and it's also precisely the one that doesn't seem to work.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.