Skip to content

A Gameboy / Gameboy Color Emulator PWA. โš›๏ธ Powered by wasmBoy. ๐ŸŽฎ

License

Notifications You must be signed in to change notification settings

magicknight/vaporBoy

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

VaporBoy

Build Status License Badge GitHub package version

An A E S T H E T I C GB / GBC Emulator PWA. Powered by wasmBoy.

Vapor Boy Walk through gif

Table of Contents

Features

  • Emulates the Gameboy / Gameboy Color using wasmBoy, for Web Assembly awesome-ness. ๐ŸŽฎ๐Ÿ‘พ๐Ÿ•น๏ธ

  • Built as a Progressive Web App(PWA), using Preact. โš›๏ธ

  • TODO Wrapped in Electron with electron-builder, and Cordova to offer standalone alternative "app" experiences on Windows, Mac, Linux, Android, and iOS. ๐Ÿฑ๐Ÿฆ

  • Feel all of the N O S T A L G I A, and appreciate the A E S T H E T I C of aesthetic-css. ๐Ÿ“ผ๐Ÿ’œ

  • Upload your ROMs from anywhere. Local Device, Pre-loaded Open Source ROMS, and even cloud services! ๐Ÿบโ˜๏ธ

  • Unique layouts for portrait (GBC), landscape (GBA), and desktop (SGB). ๐Ÿ“ฑ๐Ÿ–ฅ๏ธ

  • Keyboard, touch, and gamepad input support using responsive gamepad. โŒจ๏ธ ๐ŸŽฎ

  • Supports all major browsers (Chrome, Firefox, Safari). Meaning, you can play gameboy on your iPhone! ๐ŸŒ

  • Have complete control of your emulation and performance with configurable settings and save states. โš™๏ธ๐Ÿ’พ

  • Experience the gameboy like you never have before, with Video/Audio altering VaporBoy effects. ๐ŸŒˆ๐Ÿ”ˆ๐Ÿ“น

Example Gifs & Screenshots

Desktop Layout Land Scape Layout Desktop Control Panel Land Scape Settings

Portrait Layout Portrait ROM source Selector Portrait Home brew ROMs Portrait Effects Portrait Tobu Tobu Girl

Lighthouse Score

Lighthouse Score Screenshot. Approximately 91

Contributing

Feel free to fork and submit PRs! Any help is much appreciated, and would be a ton of fun! I would appreciate opening an issue, or replying to an already open issue to express intent of trying to solve the issue, and we discuss.

Installation

Just your standard node app. Install Node with nvm, git clone the project, and npm install, and you should be good to go!

Npm Scripts & CLI Commands

# Starts the preact development server.
npm run start

# Same as `npm run start`
npm run dev

# Runs all precommit hooks
npm run precommit

# Runs the prettier linter, and automagically fixes all linting errors
npm run prettier:fix

# Builds a production version of the PWA
npm run preact:build

# Watches for changes, and continually builds/servers a production version of the PWA
npm run preact:build:watch

# Serves the locally built PWA
npm run preact:serve

# Serves the preact development server, called by `npm run start`
npm run preact:dev

# Start the cordova browser platform for development
npm run cordova:serve

# Serves the cordova (mobile) development server
npm run cordova:dev

# Start the electron server
npm run electron:serve

# Start the electron development server
npm run electron:dev

Special Thanks

Other Notes & Links

License

Licensed under Apache 2.0. ๐Ÿฆ

About

A Gameboy / Gameboy Color Emulator PWA. โš›๏ธ Powered by wasmBoy. ๐ŸŽฎ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 76.6%
  • CSS 20.3%
  • HTML 2.8%
  • Shell 0.3%