Infinite Mac is a project by Mihai Parparita to make classic Mac and NeXT emulation easily accessible. It uses WebAssembly ports of Mini vMac, Basilisk II, SheepShaver, DingusPPC, PearPC, and Previous to allow a broad set of OS versions to run on the web.

Shortcuts to the most popular versions are available: system6.app, system7.app, kanjitalk7.app, macos8.app, and macos9.app.

FAQ

How do I use it?

The welcome document or Stickies in each machine has instructions. For a demo of the kinds of capabilities the emulators have, see this video.

How do I get files and out?

Most emulated Macs (System 7 to Mac OS 9.0.4) have a "The Outside World" drive on the desktop. Files dragged into the browser window will appear in the “Downloads” folder, and files placed in the “Uploads” folder will be downloaded to your computer. To preserve resource forks when dragging in files from modern macOS, you'll need to first archive the file or older into a .zip. See this blog post for details.

How does it work?

To learn more, including how it was built, see this series of blog posts. Source code is available on GitHub.

Why is it called Infinite Mac?

Partly because it evokes Infinite Loop, partly because porting something to the web means it can be run on an almost infinite number of devices, and partly because it's a forever project.

Why is NeXTStep included?

It's a contemporary of classic Mac OS and an ancestor of Mac OS X.

Why is Mac OS X so slow?

Mac OS X is a much more resource-intensive operating system than classic Mac OS (it also ran rather slowly on real early 2000s hardware). It's possible that adding QEMU as an emulator option will improve performance. You can subscribe to GitHub issue #72 to get updates on any QEMU-related progress.

What about DOS or Windows? Apple II? ProDOS? BeOS?

The project is focused on classic Macintosh and adjacent systems, but if you're interested in other operating systems, you can check out PCjs or Virtual x86 for Windows, and Apple ][js for ProDOS.

Do you have a web counter?

Ah, the staple of mid-90s personal pages. Sort of – emulated Mac instances have been started since the site debuted.

How can I provide feedback?

You can reach Mihai or @mihaip@hachyderm.io. For bug reports or software requests, you can also file an issue on GitHub.

How can I support the project?

Using it, sharing it, and giving feedback is the best way. If you'd like to support the project financially, you can .