Skip to content

Im-Rises/space-invaders-arcade-emulator-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

space-invaders-arcade-emulator-website

rustLogo javascriptLogo reactLogo scssLogo cssLogo

Description

Space Invaders arcade game emulator package demo written in Rust for the web.

Complete Emulator of the Intel 8080, the app is implemented to run the Space Invaders Arcade game.

πŸš€πŸš€You can try it online from your browser πŸš€πŸš€

The demo source code is available in this repository.

πŸš€πŸš€ The package source code is available in the space-invaders-arcade-emulator repository. πŸš€πŸš€

The game is implemented with all the 10 sounds of the original game and can be played in black and white or in color ( SV), normal screen mode (TV) or in colored mode (CV).

πŸš€πŸš€ The package is available on npm πŸš€πŸš€

Images

Without background

SV version TV version CV version
NOBG_BW NOBG_Color NOBG_Geeen

Using background 1

SV version TV version CV version
BG2_Green BG2_BW BG2_Color

Using background 2

SV version TV version CV version
BG1_BW BG1_Green BG1_Color

Videos

space_invaders-video.mp4

Controls

You can use the keyboard to play the game.

Arcade buttons Emulator/Keyboard
Insert coin C
P1 start Space
P1 shoot ↑
P1 ← ←
P1 β†’ β†’
P2 start G
P2 shoot E
P2 ← S
P2 β†’ F

The original game is mapped with some inputs that allow the constructor to choose the difficulty. This allows you to increase the numer of lives and change the extra ship necessity points. To change those settings check the checkboxes before starting the game.

GitHub Actions

Node.js CI ESLint CodeQL pages-build-deployment

The project is set up to run the following actions:

  • node.js.yml : Runs the tests for the Node.js project.
  • eslint.yml : Runs the ESLint linter on the project.
  • codeql.yml : Runs the CodeQL linter on the project.
  • pages-build-deployment : Publish the website

Libraries

React:
https://reactjs.org/docs/getting-started.html

Xo:
https://github.com/xojs/xo
https://github.com/xojs/eslint-config-xo-react
https://github.com/xojs/eslint-config-xo-typescript

ESLint:
https://eslint.org/docs/latest/user-guide/getting-started

GitHub gh-pages:
https://github.com/gitname/react-gh-pages

P5.js:
https://p5js.org/
https://www.npmjs.com/package/react-p5

react-device-detect:
https://www.npmjs.com/package/react-device-detect

Links

Check the source code on github

Check the demo on github

Check the package on npm

Contributors

Quentin MOREL :

GitHub contributors