crystal-web
This shard provides bindings to Web APIs on top of crystal-js.
It is still experimental and very initial. Any help is welcome.
Installation
-
Add the dependency to your
shard.yml:dependencies: web: github: lbguilherme/crystal-web -
Run
shards install -
Build your project with
lib/js/scripts/build.sh src/main.crUse the--releaseflag for an optimized build. This will produce two files: amain.wasmand amain.js. -
Add to your HTML file:
<script defer src="main.js"></script>.
Usage
require "web"
window = Web.window
console = window.console
document = window.document
console.log "Width: #{window.inner_width}"
console.log "Height: #{window.inner_height}"
canvas = document.create_element("canvas")
document.body.append_child(canvas)
ctx = canvas.get_context("2d")
ctx.font = "30px Arial"
ctx.fill_text("Hello World!", 10, 30)
