wapm-cli
js-dos
Our great sponsors
wapm-cli | js-dos | |
---|---|---|
11 | 17 | |
361 | 964 | |
- | - | |
4.9 | 8.1 | |
about 1 year ago | 16 days ago | |
Rust | TypeScript | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wapm-cli
-
Fast Matrix Math in JS 2: WASM
To actually compile this we can use a tool called WABT (WebAssembly Binary Toolkit). It's basically a mess that requires CMake and I couldn't get it to run on WSL and I wasn't going to install MinGW. Instead there's a nice tool called WAPM from Wasmer which works like npm for webassembly packages and since it's been compiled down to webassembly we can run it in any environment. In fact we don't even need to add configuration so long as wapm is installed. We can run wax wat2wasm -- wat/mat.wat -o wasm/mat.wasm. wax is like npx for npm. If you're wondering the command we give wax is defined by the wasmer/wabt package: https://wapm.io/wasmer/wabt. Also for some reason you can't prefix local paths with ./ so wax wat2wasm -- ./wat/mat.wat doesn't work which tool me a while to figure out. Anyway this provides a nice simple compile environment if you want to work on raw WAT files.
- WAPM - WebAssembly Package Manager
-
Dozens of malicious PyPI packages discovered targeting developers
That's the main reason we should start using WebAssembly for distributing and using packages.
Shamless plug: Wasmer [1] and WAPM [2] could help a lot on this quest!
[1]: https://wasmer.io/
[2]: https://wapm.io/
- WordPress WASM
-
A Look at Performance in Wasmtime and Cranelift
There's WAPM
-
Packaging and shipping your software
If it's buildable for the WebAssembly WASI target, consider also distributing it through WAPM.
-
Announcing Cargo WAPM
I don't know if many people have heard of it, but there's actually a WebAssembly Package Manager. It's similar to crates.io, except you upload WebAssembly binaries written in any language instead of Rust source code!
-
Thereās a cunning workaround for this challenge; rather than compiling JS to Wasm, you can instead compile a JavaScript engine to WebAssembly then use that to execute your code.
You can see this paying off with wapm, which lets you download applications that would have normally required compilation for your environment and run them anywhere with a supported runtime, which is imo pretty neat.
-
Security advisory: malicious crate rustdecimal | Rust Blog
One step closer to the day when I can put actix-web creations up on WAPM so "Just type wax my-cool-thing to try it out" can be one of the distribution options.
-
WebAssembly in my Browser Desktop Environment
I've added limited support to run wapm.io directly from the Terminal. Examples of commands that work well are wapm cowsay {Text} and wapm uuid.
js-dos
- Web-Based Turbo Pascal Compiler
- You can now play DOOM and other retro games in Obsidian by downloading the ObsiDOOM plugin!
-
Oregon Trail
Funny timing. I actually just built an in-house server this past Friday to host the original Oregon Trail using js-dos because I don't like poking holes in the content filter for sites like archive.org. I didn't worry too much about copyright, as I assumed it was abandonware at this point.
-
Ask HN: Again: The āI want to do everything but end up doing nothingā dilemma
Thanks glad you liked it! It's actually not a port but is running on DOS via https://js-dos.com/, same as Doom and Jazz Jackrabbit. I actually have my 8 favorite Shareware games on my website which can all be played.
https://dustinbrett.com/?app=FileExplorer&url=/Users/Public/...
-
Run old software in browser?
Maybe something like https://js-dos.com/ for dos and https://www.emulatorjs.com/ for old game consoles?
-
WebAssembly in my Browser Desktop Environment
DOS Emulation via js-dos
-
5 Insane Features in my OS in the Browser!!! š¤Æ
Adding emulators is something I always wanted to do and I have plans to add more in 2022. For 2021 I was able to add Virtual x86 (.img/.iso), BoxedWine (.exe/.zip), JS-DOS (.exe/.zip) & Ruffle (.swf/.spl). Most of these emulators utilize WebAssembly to run non-JS code.
-
After 1 YEAR of hard work my NEW Ultimate Web Desktop Environment is ready for launch!!!!!
It can indeed run some real windows programs via BoxedWine. I've set it up so you can double click an .exe and it will automatically try and run it, although typically if it needs support dll's then they are all in a zip. For example the zip file for Notepad++ 32-bit x86 can directly run in BoxedWine. You just drag the zip file on, right click and select run in BoxedWine. It can also run DOS apps/games via JS-DOS and has similar mappings for exe/zip. Both emulators make use of WASM as do several other apps, such as the x86 emulator shown in the demo video. My main "OS" is only JS/HTML/CSS written in TypeScript with React/Styled Components.
- JavaScript-DOS: The best API for running DOS programs in browser
What are some alternatives?
WASM-ImageMagick - Webassembly compilation of https://github.com/ImageMagick/ImageMagick & samples
dos-game - A Dockerfile for running Docker based DosBox games streamed to a browser client.
wasmer-js - Monorepo for Javascript WebAssembly packages by Wasmer
eruda - Console for mobile browsers
Boxedwine
daedalOS - Desktop environment in the browser
wordpress-playground - Run WordPress in the browser via WebAssembly PHP
Monaco Editor - A browser based code editor
Graphene - GraphQL framework for Python
v86 - x86 PC emulator and x86-to-wasm JIT, running in the browser
ffmpeg.wasm - FFmpeg for browser, powered by WebAssembly
xterm.js - A terminal for the web