COIL Connect

visit
A curriculum matchmaking app for teachers and professors around the world interested in collaborating.

Hilberts

visit
A library of books and bots.

Scryer Studio

visit
Experimenting with drawing tools

AI Plans

visit
Coding an app for a small team to solicit approaches towards dealing with AI alignment.

Emu

visit
My personal google replacement.

Game Scry

visit
A game discovery database and interface

laternow

visit
Artist portfolio of Gail Vachon, NYC

Threepress

visit
A plugin merging threejs and WordPress, a work in progress.

wager

visit
A spaceship tavern gambling game, made with the DOM and http requests before I learned proper game stacks. Registrations are not verified; any email will do.

Rocketfit

visit
Widget to check storage capacity for a rocket sales company

threejs gotchas

Lighting a large scene: DirectionalLight is the best simulation of daylight. But in a big world, you probably don’t want to light it all at once. You’ll need to update the light position and also it’s target position, what it uses to calculate it’s angle. The gotcha is: you have to run scene.add( light.target ) […]

bash resources

set_cache, a workaround to bundlers. Use CLEAR_FILE to prevent accidental sed overwrites. Replace all query string numbers with $1 arg to set_cache. If you use the same file structure or framework frequently and often code with multiple windows – start all the directories or files at once with Sublime Text (subl). A rough file / […]

state handling

CSS: javascript:

running certbot with nginx on debian 10 for SSL certificates

The authoritative source: https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-debian-10 TLDR: A records in place for [url] and www.[url]basic server block in /etc/nginx/sites-available/[domain]sudo apt updatesudo apt install python3-acme python3-certbot python3-mock python3-openssl python3-pkg-resources python3-pyparsing python3-zope.interfacesudo apt install python3-certbot-nginx(https) : sudo ufw status if needed: sudo ufw allow ‘Nginx Full’sudo ufw delete allow ‘Nginx HTTP’ Lastly: sudo certbot –nginx -d your_domain -d www.your_domain […]

pm2 101

process monitor 2 list apps pm2 dashboard: start with custom name: reset app list: empty log files

music

visit
a simple mp3 player

Spatial audio with howlerjs quickstart

a few hurdles I had getting started with spatial audio: How do I scale “my game space” to “howler space” Remember that howler’s pos() is arbitrarily different than your position units – I found that anything beyond approx 5 “howler units” was silent. In my game, 5 units is a tiny distance, so I was […]

Bare Bones javascript Pub/Sub mechanism

threejs scratchpad

visit
practice new functions in the console; copy and paste all your Scene init boilerplate

systemd 101

a pocket reference Getting to know your system daemon Create your user-created service files in: The machine-created service files will go in: more in-depth: where do i put my systemd service file what is the difference between systemd system and user services Example a sample .service file, at /etc/systemd/system/hello.service: *common mistake – make sure to […]

Emu boards

visit
Easily create, share and save real time plain text

clock

visit

Bump!

embeddable clientside widget to book appointments with a firebase API

make your own Reddit browser

Reddit exposes all their subreddits (and just about everything else too), to public RSS feeds. This means you can do all sorts of fun automation with it. Here’s a quick recipe to get it up and running on standard shared LAMP hosting, such as you might have for a WordPress. [ DISCLAIMER ] – it […]

Mud

A browser MMO aimed at MUD fans.

HTTP soccer

visit
Coded a multiplayer board game using HTTP polling, enabling it to be dropped on any server running php and work out of the box. No rules are coded; it is up to the participants to play their own game.

somewhere gallery

An art gallery for anyone to hang art.  (This project since merged into Threepress plugin)

Custom framerate for Threejs

By default, javascript’s requestAnimationFrame will run as fast as it possibly can, and if you have much logic in your animation loop, you’ll quickly hear your computer fans start to whir. To free up CPU power for other tasks and keep  your webpage snappy, request your animation frames by timestamp instead of “asap”, like this: […]

Eccentricity.online

visit
Trying to build a browser MMO on a $5 server.

dpkt

Collaborative moodboards with fabricjs

Illuminated Parchment

This was a plugin script circa 2014 (inserted via yet another plugin, Gryphonheart Items ), that allowed players in World of Warcraft to trade drawings with each other as in-game items. The stored drawing was an array of coordinate and texture data, a hybrid raster and vector approach, because there were no methods available via […]
oko
friend