Andy Wingo 181bf222a2 Attempt to update example | 6 months ago | |
---|---|---|
.. | ||
hello | 7 months ago | |
Makefile | 7 months ago | |
README.md | 6 months ago | |
hello.js | 6 months ago | |
hello.scm | 7 months ago | |
index.html | 6 months ago | |
manifest.scm | 7 months ago | |
reflect.js | 6 months ago | |
reflect.wasm | 6 months ago | |
wtf8.wasm | 6 months ago |
This directory serves as an example of a basic Hoot project that you can use as a starting point for your own project!
It has everything you need:
A simple Scheme program composed of multiple modules that makes use of Web APIs.
A manifest.scm
file for creating a development environment with
guix shell
A Makefile
for compiling the Scheme source to a WebAssembly
binary.
HTML and JavaScript files for loading the WebAssembly binary in a web page.
A simple development web server for testing builds.
There is one wrinkle in this template: The reflect.wasm
, reflect.js
,
and wtf8.wasm
files are symlinks. If you choose to copy this project
somewhere as a starting point, you'll want to copy over the necessary
files. If you've installed Hoot to your system via make install
or
via a package manager, you'll find all these files in Hoot's share
directory (such as /usr/share/guile-hoot
) and can symlink/copy from
there. We are looking forward to making this step entirely unnecessary
in future releases.
Building this project requires GNU Guix.
Once you have Guix, the development environment with all necessary dependencies can be created:
guix shell
Build the project:
make
Launch a development web server:
make serve
To check if the program works, visit https://localhost:8088 in your web browser. We recommend using Mozilla Firefox or Google Chrome at this time.