- Deployed as a Vercel Next.js (w/Rust/WASM) site
- Deployed as a Vercel Next.js slide deck
- Next.js - WASM - Rust - Go:
./packages/*
- Static image/video generation in Go:
./static-go/
- Original
C++
code from CRC in./legacy-CRC/
circa 1996 - Original
Fortran
version: lost, but if I had it, I would dockerize it!
VT Zone Plate | VH Zone Plate |
---|---|
Given as a talk at OttawaJS October '20 and first Next.js Conference
- Externalize module for zoneplate View/engines/hook/annotate (no controls)
- npm packages
- normalize the README
- normalize the package.json scripts - dev build lint test
- enable jest in libs (microbundle)
- Alternate backend
- Netlify https://github.com/netlify/next-on-netlify
- Google Cloud Run (Docker)
- Refactor annotations (specific props)
- Minimal testing (unit & integration)
- Go: try to find a zero allocation model (especially for tinyGo)
- go still allocates the array, and the copies it into the passed Uint8ClampedArray
- Replace wasm_exec with ... a real module
- webpack go loader npm
- webpack go loader blog
- Review Styling
lerna bootstrap
lerna run dev --parallel
lerna run test
# example new package
lerna create --private render-js
# adjust names and entrypoint:dist/index.js
cd packages/render-js && npm i -D microbundle standard jest
Add package.json
targets:
"source": "lib/index.js",
"scripts": {
..
"dev": "microbundle watch --jsx React.createElement"
},
"jest": {
"coverageThreshold": {
"global": {
"branches": 0,
"functions": 0,
"lines": 0,
"statements": 0
}
}
},
"standard": {
"//parser": "babel-eslint",
"env": {
"jest": true
}
},
cd packages
npx create-next-app
cd front-end
lerna add render-js
I wrote the original zoneplate code as part af my first undergrad internship at CRC circa 1986. My task was to implement these test patterns as part of a video signal processing research group. The original implementation was written in Fortran on a DEC LSI-11 (64kB of memory).
This was my first introduction to conics. The patterns generalize to conic sections or projections:
I later joined the group permanently.
Advanced Video Systems group in 1999 |
Thanks to André, Bernard, Gilles, Phil, Tom, Mike, Jean-Pierre, Metin, Lew, James, Marc, Demin and so many more...