Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/olange/arcade
A distributed arcade game and mashup of a few delighful arcade games from the eighties — including restoration of an original Pacman Arcade Cocktail table (Karateco 1984)
https://github.com/olange/arcade
arcade game hexagrid
Last synced: 2 days ago
JSON representation
A distributed arcade game and mashup of a few delighful arcade games from the eighties — including restoration of an original Pacman Arcade Cocktail table (Karateco 1984)
- Host: GitHub
- URL: https://github.com/olange/arcade
- Owner: olange
- License: apache-2.0
- Created: 2020-08-11T14:33:44.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-06-13T17:38:57.000Z (over 2 years ago)
- Last Synced: 2024-12-17T09:50:16.155Z (5 days ago)
- Topics: arcade, game, hexagrid
- Language: JavaScript
- Homepage: https://d-arcade.app
- Size: 1.4 MB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Arcade
Restoration of a Pacman Arcade Cocktail table (Karateco 1984) and mashup of a few arcade games, retrofitted to hexagonal grids.
## Project status
🌱 Early stage of development. Only a landing page with a partial UI is deployed on Firebase. Expect everything to evolve. Next to the source code, there are various experiments available and listed from the [homepage of the wiki](https://github.com/olange/arcade/wiki).
## Repository structure
This repository has a _monorepo_ layout, holding two projects [`webapp`](webapp/) and [`server`](server/), with shared library [`hexgrid`](packages/hexgrid/).
```ascii
/ ..................... NPM & Firebase scripts for global assembly & deployment
|
+-- webapp ............ D-Arcade PWA
| +-- components .... + Web Components
| +-- static ........ + Static HTML5/CSS3 & more assets
|
+-- server ............ D-Arcade Back-end
| +-- src ........... + (to be created)
|
+-- packages
+-- hexgrid ....... Hexgrid library from Red Blob Games
```## How-to… ?
### 1. Setup
```bash
$ npm install
```Optionally, if you want to deploy to [Firebase Hosting](https://console.firebase.google.com/project/d-arcade/hosting) — requires appropriate access rights:
```bash
$ npm install -g firebase-tools
```### 2. Run
Start development server & edit the code of the webapp, save and enjoy instant [hot-module reloading](https://www.snowpack.dev/concepts/hot-module-replacement) – by the virtue of [ESBuild](https://esbuild.github.io) and [Snowpack](https://www.snowpack.dev):
```bash
$ npm run start
```Above is equivalent to:
```bash
$ cd webapp
$ npm run start
```### 3. Deploy
Deploy to [Firebase Hosting](https://console.firebase.google.com/project/d-arcade/hosting) — would require appropriate access rights:
```bash
$ npm run deploy
```This command will also run a production build of the webapp and its dependencies
(triggered by `hosting/predeploy` script in [`firebase.json`](firebase.json)).### 4. Production build
```bash
# All packages
$ npm run build# A single package
$ cd webapp
$ npm run build
```### 5. Specialized tasks
Check code-style & reformat source code (with [Prettier](https://prettier.io)):
```bash
# All packages
$ npm run format# A single package
$ cd webapp
$ npm run format
```Check syntax & eventually find problems (with [ESLint](https://eslint.org)):
```bash
# All packages
$ npm run lint# A single package
$ cd webapp
$ npm run lint# Alternatively, from the root folder
$ npx eslint webapp
```