Skip to content

Expanding the Rust wasm Book #21

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
1 of 9 tasks
jrichocean opened this issue Jun 16, 2018 · 2 comments
Open
1 of 9 tasks

Expanding the Rust wasm Book #21

jrichocean opened this issue Jun 16, 2018 · 2 comments

Comments

@jrichocean
Copy link

jrichocean commented Jun 16, 2018

link to old issue

Issue opened by @mgattozzi

In #12 we added the book to act as a central part of documenting and working with wasm and Rust.
We should continue to expand it as we hash things out and continue to work on wasm. I've compiled a list of tasks below to help grow and maintain the book. This can be a starting point for those wishing to help out but aren't really sure what to do.

Tasks

  • Document workflows: This is part of #7. We need to document different ways to work with and utilize Rust. For instance how to use various bits of tooling to shrink binaries or clean them up beyond what the wasm32 target does, or passing data into and out of JS for instance. The book tells people how to setup the environment and run hello world. Now we need to go beyond that.

  • Document tools available to users: We have this in #10 but for someone just picking up the book and who doesn't want to wade through the issue tracker having a list would be good.
    Update: In #42 we added the page but this can be expanded as it is a living document! Finding more tools to add and removing old or unused ones overtime will be important.

  • Expanding #28 into it's own section: This will allow users who want to make a crate know how to make it easier to work with wasm.

  • Current state of wasm32 development with rustc: Not everyone has the time to read all the PRs, tracking issues, and things going on with it and having a sort of changelog of sorts would help us keep track of changes specific to wasm but also give consumers of the wasm32 backend a way to see what's changing.

  • Collection of articles: People have talked about their experiences online with Rust and wasm. We should bring them into a place that's easy to access and learn from. This also allows us to supplement the book as it's expanded

  • Collection of demos: Lots of people are making things with wasm and Rust. Let's collect them all into a central place so people can see it in action!

  • Tutorials and guides: What is wasm? What is wat? How can someone learn it and utilize it with Rust? The WebAssembly website has some great resources but they focus more on C++ being used and not everyone wants to look at standards. A lot of the docs are what web assembly is and less how to use it. Let's make some high quality Rust examples and guides!

    • Tutorial for Writing a Library for JS: Scenarios where we are writing a Rust crate that will be compiled into a WebAssembly module that is used as a library by JavaScript. For example, perhaps the hot portion of some JS is being re-written in Rust/wasm. Similar to scenarios like Oxidizing Source Maps with Rust and WebAssembly
    • Tutorial for Writing Pure-Rust Web Apps: Scenarios where there isn't any hand-written JS being loaded, only machine generated glue to access DOM APIs, and all the magic is in pure Rust.

There's likely more we can do to increase our documentation efforts but this seems like a good few steps we can take to really get our documentation efforts underway.

@mgattozzi
Copy link
Contributor

@sarahmeyer and @nanoplink any of these are really great to work on. These would be appendixes to the book however!

@tyt2y3
Copy link

tyt2y3 commented Aug 12, 2019

Hi all! I am new to the rust community. I reimplemented wasm_game_of_life in pure rust. Hope this is a good first step for Tutorial for Writing Pure-Rust Web Apps. I just started learning rust, and I don't think I understand web_sys and rust wasm thoroughly enough to write a chapter. Below is just my two cents. Thank you all!

also rustwasm/wasm_game_of_life#49
https://github.com/tyt2y3/wasm_game_of_life/tree/pure-rust

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants