Shimmering quil sketches; a few particle simulations, video processing experiments, randomly generated L-systems, 3d transformations, and cellular automata.
https://dgtized.github.io/shimmers
Note: Some sketches require camera input, so it will prompt for video permissions, but it's not transmitting the video anywhere, just processing it locally.
Install JDK and Clojure CLI Tools
$ npm install # overrides p5.js to current version over cljsjs coordinates
$ bin/install-bb
$ bin/repl
This launches a figwheel REPL that will update after saving any changes.
https://localhost:9500 shows main app, http://localhost:9500/figwheel-extra-main/tests shows test results.
My preferred development environment is Emacs using Cider to communicate with
the ClojureScript browser REPL. This should start using cider-jack-in-cljs
presuming Emacs and Cider are already configured.
The .dir-locals.el configuration also enables a couple
convenience functions in shimmers.el. It binds f8 to
shimmers-visit-sketch
, which will change the current sketch in the browser to
reflect the current sketch file buffer in Emacs. It also adds
shimmers-visit-tests
that opens a browser window to the test runner.
Tests are verified in continuous integration using Github Actions but can also be run locally using:
$ bin/ci
Push to github will build a release automatically. It's using bb build
to
create a build in static-site
, and then uploads the new build to github pages using
actions.
This source repository is released under the AGPL 3.0 free software license.
See LICENSE for details.
Copyright © 2020-2024 Charles L.G. Comstock