I have thirty years experience building websites and have been creating JavaScript applications since 1999. I am the Lead and Founder at Modern Poacher.
I use EcmaScript and TypeScript with React and Node.
You can email me directly or message me on LinkedIn.
My CV is available on Dropbox.
The Modern Poacher organisation has projects which are related to or derived from the Zashiki Karakuri platform.
The Sequence Media organisation has the majority of my public projects.
Several projects for Modern Poacher (including the Back Office Karakuri app) are private.
Zashiki Karakuri produces, exchanges, and validates JSON documents.
Both shinkansen-cogs and shinkansen-sprockets were begun around 2014 for Zashiki (which is the Front Office part of the platform). At the start of 2025 I improved the type definitions as well as the tests in Jest. I have used versions of them on several other projects and even forked them (to cogs and sprockets respectively) where there are some useful changes which aren't compatible with Zashiki. (Depending on time and need the forked projects may not currently be in sync with the originals.)
Zashiki is the core from which are derived implementations. Currently it supports Hapi.
- The React implementation uses Ajax requests
- The GDS implementation does not use Ajax at all and instead depends on
HTTPGETandPOSTrequests
Zashiki must be used in conjunction with Karakuri (or another service implementing the same API) so you might be able to clone and start the apps but they will fail. Feel free to explore the code.
Form Data is transformed into JSON documents and JSON documents transformed back into Form Data with shinkansen-transmission.
I use Jest for component testing, sometimes in conjunction with Mocha. I also use Testing Library but have depended on instance and snapshot testing for so long that it didn't make sense to migrate those suites so instead I implemented instance and snapshot testing for Testing Library. Which I'm sure will get me sent to Jest jail.




