All Projects → torch2424 → Wasm By Example

torch2424 / Wasm By Example

Wasm By Example is a website with a set of hands-on introduction examples and tutorials for WebAssembly (Wasm)

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Wasm By Example

Webassembly Examples
From Simple To Complex. A complete collection of webassembly examples.
Stars: ✭ 177 (-21.68%)
Mutual labels:  example, examples, webassembly, wasm
Learning Rust
Rust 学习之路 > Rust Programming Tutorial, include articles, interview, example, problems.
Stars: ✭ 376 (+66.37%)
Mutual labels:  tutorial, learning, example, examples
Rxjava2 Android Samples
RxJava 2 Android Examples - Migration From RxJava 1 to RxJava 2 - How to use RxJava 2 in Android
Stars: ✭ 4,950 (+2090.27%)
Mutual labels:  tutorial, example, examples
Amazon Sagemaker Examples
Example 📓 Jupyter notebooks that demonstrate how to build, train, and deploy machine learning models using 🧠 Amazon SageMaker.
Stars: ✭ 6,346 (+2707.96%)
Mutual labels:  learning, example, examples
Terrarium Templates
Template and example projects for Fastly Labs Terrarium https://wasm.fastlylabs.com
Stars: ✭ 21 (-90.71%)
Mutual labels:  examples, webassembly, wasm
50 Projects For React And The Static Web
⚛ 50 project ideas to learn by doing complete with project briefs, layout ideas, and resources!
Stars: ✭ 319 (+41.15%)
Mutual labels:  tutorial, learning, learning-by-doing
Renderhelp
⚡️ 可编程渲染管线实现,帮助初学者学习渲染
Stars: ✭ 494 (+118.58%)
Mutual labels:  tutorial, learning, learning-by-doing
Notebooks
Learn Python for free using open-source notebooks in Hebrew.
Stars: ✭ 877 (+288.05%)
Mutual labels:  tutorial, learning, learning-by-doing
Wordpress Plugin Boilerplate Tutorial
Tutorials and Examples for WordPress Plugin Boilerplate, a foundation for WordPress Plugin Development.
Stars: ✭ 232 (+2.65%)
Mutual labels:  tutorial, example, examples
Jni By Examples
🎇Fun Java JNI By Examples - with CMake and C++ (or C, of course!) ‼️ Accepting PRs
Stars: ✭ 99 (-56.19%)
Mutual labels:  tutorial, example, examples
Core
D Language online tour (https://tour.dlang.org/) and online editor (https://run.dlang.io/)
Stars: ✭ 89 (-60.62%)
Mutual labels:  tutorial, learning, introduction
Godot tutorials
Code and examples for KidsCanCode Godot Tutorials.
Stars: ✭ 119 (-47.35%)
Mutual labels:  tutorial, example, examples
Vaporschool
Learn how to build vapor applications from rookie to champion in a constructive way!
Stars: ✭ 259 (+14.6%)
Mutual labels:  tutorial, example, examples
React From Zero
A simple (99% ES2015 less) tutorial for React
Stars: ✭ 4,638 (+1952.21%)
Mutual labels:  tutorial, learning, example
go-wasm-examples
Some small examples of using Go and WebAssembly
Stars: ✭ 22 (-90.27%)
Mutual labels:  example, webassembly, wasm
Haxejs
Documentation about using JavaScript with Haxe
Stars: ✭ 25 (-88.94%)
Mutual labels:  tutorial, example, examples
Expo Three Demo
🍎👩‍🏫 Collection of Demos for THREE.js in Expo!
Stars: ✭ 76 (-66.37%)
Mutual labels:  tutorial, learning, example
Made With Webassembly
A showcase of awesome production applications, side projects, and use cases made with WebAssembly (Wasm). 👷
Stars: ✭ 132 (-41.59%)
Mutual labels:  example, webassembly, wasm
Golang For Nodejs Developers
Examples of Golang compared to Node.js for learning
Stars: ✭ 2,698 (+1093.81%)
Mutual labels:  tutorial, learning, examples
React Workshop
The course material for our React Hooks workshop
Stars: ✭ 184 (-18.58%)
Mutual labels:  tutorial, example

wasm-by-example

Travis Status License: CC BY 4.0

Wasm By Example is a website containing simple examples for how to get things done with wasm.

Wasm By Example Website Header

Table of Contents

Motivation

This project is heavily inspired by Go By Example. Wasm is still relatively young, and I thought it would be great to have a similar, hands-on / tutorial / introduction into WebAssembly for those who "learn by doing".

Getting Started

One-time Setup

  1. Create a GitHub account if you don't already have one.

  2. Install and set up Git.

  3. Install the latest LTS version of Node.js (which includes npm). An easy way to do so is with nvm. (Mac and Linux: here, Windows: here)

    nvm install --lts
    
  4. Create your own fork of the wasm-by-example repository by clicking "Fork" in the Web UI. During local development, this will be referred to by git as origin.

  5. Download your fork to a local repository.

    git clone [email protected]:<your username>/wasm-by-example.git
    
  6. Add an alias called upstream to refer to the main torch2424/wasm-by-example repository. Go to the root directory of the newly created local repository directory and run:

    git remote add upstream [email protected]:torch2424/wasm-by-example.git
    
  7. Fetch data from the upstream remote:

    git fetch upstream master
    
  8. Set up your local master branch to track upstream/master instead of origin/master (which will rapidly become outdated).

    git branch -u upstream/master master
    

Branch (do this each time you want a new branch)

Create and go to the branch:

git checkout -b <branch name> master

Building & Running the project

  1. Make sure you have the latest packages (after you pull): npm install
  2. To build the project, run: npm run build
  3. To serve, and build on changes for the project, run: npm run dev

Contributing

Thank you for wanting to contribute! Below is a guide for contributing different parts of the project:

Examples

Examples are the individual examples, concepts, or ideas conveyed for each language. Examples are laid out in the following format:

examples/EXAMPLE_NAME/EXAMPLE_NAME.PROGRAMMING_LANGUAGE.READING_LANGUAGE.md

Where the variables represent the following ideas:

  • EXAMPLE_NAME - is the name / title of the example.
  • PROGRAMMING_LANGUAGE - is the programming language used for the code snippets (e.g Rust).
  • READING_LANGUAGE - is the language that the idea is read / spoken (e.g English).

It is highly recommended examples also offer a demo where reasonable. Demos should be placed:

examples/EXAMPLE_NAME/demo/PROGRAMMING_LANGUAGE

Please place all relevant files there, and feel free to serve via an iframe, or link to the full source code. It is also recommended you offer a README.md to explain the demo, or simply offer build instructions.

Now that we understand how examples are made, let's see some general guidance for contributing examples:

Creating a new Example

Awesome! Glad to see new examples and ideas! I'd recommended opening an issue before contributing an entirely new example. This way we can discuss if the example idea is beneficial, and to bring awareness to other contributors that ma want to do any translations and things.

After the idea has been discussed, feel free to open a PR following the format explained above, and we can review and add it to the website!

By default, all new examples will be last in the example list on the homepage. To set the order of your example, add your example's name to the array in build-system/example-order.js to set its order.

Adding a new Programming Language to an existing Example

If you are adding a new programming language, feel free to simply open a new PR with the format explained above, and we can review and add it to the website! NOTE: It is highly recommended you add a demo of your example, unless there is a good reason for not providing one.

Adding a new Reading Language (Translation) to an existing Example

If you are adding a new reading language, feel free to simply open a new PR with the format explained above, and we can review and add it to the website! New reading languages don't require a new demo or anything like that, and simply translate the written text between examples where it seems right.

Adding a completely new Reading Language (Translation)

If you would like to add a new language that is not supported at all in the project, first of all, THANK YOU SO MUCH! :)

To get started with this, you will want to do the following steps:

  1. Open an issue, just to let maintainers know you would like to add a new language, so we can help :)
  2. Add your reading language to build-system/homepage.js. As well as, add translations to the fields on the objects with your corresponding lnaguage key (For example, English(US) is "en-us").
  3. Add your reading language to the shell/js/index.js.
  4. See the steps outlined in Adding a new Reading Language (Translation) to an existing Example to start translating examples! They should appear on the homepage as you add them!

Improving the shell (the base website)

Improving the shell (E.g the language switcher or typos in the landing page and things), feel free to open a PR! For larger ideas or new sections of the site, it is recommended to open an issue first for discussion.

Any other contributions

For all other types of contributions (E.g perhaps you are a platform that wants to expand on Wasm By Example or something), please open an issue first describing the idea, and then we can work on a PR that works for the community at large.

Privacy

Google Analytics is used on Wasm By Example, and is only used to record Basic visit data, as the script is only loaded.

License

This work is copyright Aaron Turner and licensed under a Creative Commons Attribution 4.0 License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].