The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 12 JavaScript Emulation Projects
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
vaporBoy
Gameboy / Gameboy Color Emulator PWA built with Preact. ⚛️ Powered by wasmBoy. 🎮Themed with VaporWave. 🌴🐬
-
jsmoo
Multi-system, pure JavaScript (& a little AssemblyScript) emulator, with great accuracy and speed. Currently some SNES, NES, GameBoy, Master System, ZX Spectrum, and GameGear support
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Thanks to the amazing people at EmulatorJS and Libretro for making this all possible.
Project mention: Ask HN: What products other than Obsidian share the file over app philosophy? | news.ycombinator.com | 2024-04-03There are flat-file CMSes (content management systems) like Grav: https://getgrav.org/
I guess, in some vague/broad sense, config-as-code systems also implement something similar? Maybe even OpenAPI schemas could count to some degree...?
In the old days, the "semantic web" movement was an attempt to make more webpages both human- and machine-readable indefinitely by tagging them with proper schema: https://en.wikipedia.org/wiki/Resource_Description_Framework. Even Google was on board for a while, but I guess it never saw much uptake. As far as I can tell it's basically dead now, both because of non-semantic HTML (everything as a React div), general laziness, and LLMs being able to parse things loosely.
-------------
Side thoughts...
Philosophically, I don't know that capturing raw data alone as files is really sufficient to capture the nuances of any particular experience, or the overall zeitgeist of an era. You can archive Geocities pages, but that doesn't really capture the novelty and indie-ness of that era. Similarly, you can save TikTok videos, but absent the cultural environment that created them (and a faithful recreation of the recommendation algorithm), they wouldn't really show future archaeologists how teenagers today lived.
I worked for a natural history museum for a while, and while we were there, one of the interesting questions (well, to me anyway) was whether our web content was in and of itself worth preserving as a cultural artifact -- both so that future generations can see what exhibits were interesting/apropos for the cultures of our times, but also so they could see how our generation found out about those exhibitions to begin with (who knows what the Web will morph into 50 years later). It wasn't enough to simply save the HTML of our web pages, both because they tie into various other APIs and databases (like zoological collections) and because some were interactive experiences, like games designed to be played with a mouse (before phones were popular), or phone chatbots with some of our specimens. To really capture the experience authentically would've required emulating not just our tech stacks and devices, among other things.
Like for the earlier Geocities example, sure you could just save the old HTML and render it with a modern browser, but that's not the same as something like https://oldweb.today/?browser=ns3-mac#http://geocities.com/ , which emulates the whole OS and browser too. And that still isn't the same as having to sit in front of a tiny CRT and wait minutes for everything to download over a 14.4k modem, only to be interrupted when mom had to make a call.
I guess that's a longwinded of critiquing "file over app": It only makes sense for things that are originally files/documents to begin with. Much of our lives now are not flat docs but "experiences" that take much more thought and effort to archive. If the goal is truly to preserve that posterity, it's not enough to just archive their raw data, but to develop ways to record and later emulate entire experiences, both technological and cultural. It ain't easy!
Project mention: Best compiler to write .nes cartridge ROMs for testing my own emulator? | /r/EmuDev | 2023-12-06If you really want to use it, I have a bad 65816 assembler at https://github.com/raddad772/jsmoo/blob/main/component/cpu/wdc65816/wdc65816_assembler.js . Just don’t switch it to 65816 mode and it should produce compatible code. I wrote it as a pile of hacks on top of each other and you still need to add an iNES header.
JavaScript Emulation related posts
- Ask HN: It's 1997, how do you build a website?
- SURF THE WEB LIKE IT'S 1999!
- Best compiler to write .nes cartridge ROMs for testing my own emulator?
- Starting Game Boy emulator, need a little insight
- Is there a website that shows chronological versions of websites/apps/aplatforms?
- "Put Mac OS on iPad" they said, "it'll be fun" they said...
- Snes, Nes, GameBoy and A26 emulator.
-
A note from our sponsor - WorkOS
workos.com | 26 Apr 2024
Index
What are some of the best open-source Emulation projects in JavaScript? This list will help you:
Project | Stars | |
---|---|---|
1 | jsnes | 5,990 |
2 | EmulatorJS | 1,224 |
3 | emulatorjs | 351 |
4 | vaporBoy | 243 |
5 | oldweb-today | 234 |
6 | rsc-server | 71 |
7 | jsmoo | 68 |
8 | zenga | 21 |
9 | ContrAltoJS | 17 |
10 | digi-avr | 14 |
11 | deck | 11 |
12 | virtualNanoleaf | 1 |
Sponsored