https://github.com/remarkablegames/awestruck
✨ Awestruck
https://github.com/remarkablegames/awestruck
card-game deckbuilder game game-jam html5 javascript kaplay kaplayjs roguelike typescript web
Last synced: about 2 months ago
JSON representation
✨ Awestruck
- Host: GitHub
- URL: https://github.com/remarkablegames/awestruck
- Owner: remarkablegames
- Created: 2026-03-22T04:11:22.000Z (2 months ago)
- Default Branch: master
- Last Pushed: 2026-04-03T02:22:14.000Z (2 months ago)
- Last Synced: 2026-04-03T08:21:11.089Z (2 months ago)
- Topics: card-game, deckbuilder, game, game-jam, html5, javascript, kaplay, kaplayjs, roguelike, typescript, web
- Language: TypeScript
- Homepage: http://remarkablegames.org/awestruck/
- Size: 3.79 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
- Agents: AGENTS.md
Awesome Lists containing this project
README
# Awestruck
[](https://github.com/remarkablegames/awestruck/releases)
[](https://github.com/remarkablegames/awestruck/actions/workflows/build.yml)
🎴 Awestruck is a deckbuilding card game that synergizes words.
Play the game on:
- [itch.io](https://remarkablegames.itch.io/awestruck)
- [remarkablegames](https://remarkablegames.org/awestruck/)
## Credits
- [AstreFone](https://soundcloud.com/astrefone) (Music)
- [Blue_Fox](https://ko-fi.com/bluefox77551) (Art)
- [Mark](https://github.com/remarkablemark) (Programming)
- [Heal Up](https://pixabay.com/sound-effects/film-special-effects-heal-up-39285/)
- [Health Pickup](https://pixabay.com/sound-effects/film-special-effects-health-pickup-6860/)
- [Kenney Interface Sounds](https://kenney.nl/assets/interface-sounds)
- [Punch Sound Effects](https://pixabay.com/sound-effects/film-special-effects-punch-sound-effects-28649/)
## Prerequisites
[nvm](https://github.com/nvm-sh/nvm#installing-and-updating):
```sh
brew install nvm
```
## Install
Clone the repository:
```sh
git clone https://github.com/remarkablegames/awestruck.git
cd awestruck
```
Install the dependencies:
```sh
npm install
```
## Environment Variables
Update the environment variables:
```sh
cp .env .env.local
```
Update the **Secrets** in the repository **Settings**.
## Available Scripts
In the project directory, you can run:
### `npm start`
Runs the game in the development mode.
Open [http://localhost:5173](http://localhost:5173) to view it in the browser.
The page will reload if you make edits.
You will also see any errors in the console.
### `npm run build`
Builds the game for production to the `dist` folder.
It correctly bundles in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your game is ready to be deployed!
### `npm run bundle`
Builds the game and compresses the contents into a ZIP archive in the `dist` folder.
Your game can be uploaded to your server, [itch.io](https://itch.io/), [newgrounds](https://www.newgrounds.com/), etc.
## Testing
The game supports a few querystring overrides for debugging/playtesting fresh runs.
- `floor`: start on a specific floor from `1` to `8`
- `reward`: start on a specific reward from `1` to `7`
- `handSize`: change the opening hand size and normal turn draw size
- `deck`: provide a comma-separated list of card IDs, or `*` to load all cards
Start at floor 8:
```
http://localhost:5173/?floor=8
```
Start at reward 7:
```
http://localhost:5173/?reward=7
```
Start with all cards:
```
http://localhost:5173/?deck=*&handSize=44
```
Start with specific cards:
```
http://localhost:5173/?deck=burn1,thorn1,focus1
```
Notes:
- Query overrides are applied only when creating a fresh run
- Invalid values fall back to the default run setup
- `deck` uses card IDs, not display labels