No description
Find a file
2024-10-29 00:22:51 +08:00
modules feat: add task and click app 2024-10-27 20:36:17 +08:00
.gitignore build: init 2024-10-26 16:40:55 +08:00
COPYING build: init 2024-10-26 16:40:55 +08:00
game.css build: init 2024-10-26 16:40:55 +08:00
game.js feat: add task and click app 2024-10-27 20:36:17 +08:00
game.scm feat: add interval update 2024-10-29 00:22:51 +08:00
index.html build: init 2024-10-26 16:40:55 +08:00
Makefile build: init 2024-10-26 16:40:55 +08:00
manifest.scm build: init 2024-10-26 16:40:55 +08:00
README.md build: init 2024-10-26 16:40:55 +08:00
reflect.js build: init 2024-10-26 16:40:55 +08:00
reflect.wasm build: init 2024-10-26 16:40:55 +08:00
wtf8.wasm build: init 2024-10-26 16:40:55 +08:00

Guile Hoot Game Jam Template

This repository is the quickest way to get started building games in Scheme that run in web browsers with Guile Hoot!

It has everything you need:

  • A simple Breakout clone to use as a starting point.

  • HTML and JavaScript boilerplate for running the game in a web page.

  • DOM bindings for events, images, audio, and more.

  • HTML5 canvas bindings for rendering.

  • Some simple but useful game math modules.

  • A Makefile for compiling the game to WebAssembly, running a development web server, and generating zip bundles for publishing to itch.io.

  • A Guix manifest.scm file for creating a development environment with guix shell.

Tutorial

The fastest way to get everything you need is to use GNU Guix, a wonderful package manager written in Scheme.

Once you have Guix, the development environment with all necessary dependencies can be created:

guix shell

To build the game, run:

make

To launch a development web server, run:

make serve

To check if the program works, visit https://localhost:8088 in your web browser. We recommend using Mozilla Firefox or Google Chrome. Hoot is not supported on Safari at this time.

When it's time to publish the game to itch.io, run:

make bundle

Upload the resulting zip file to your itch.io game page and share your game with others! Have fun!

Getting help

If you have questions or need some help, visit the Spritely Institute's forum or connect to the #spritely channel on the Libera.Chat IRC network.