Skip to content
View modernpoacherlimited's full-sized avatar

Highlights

  • Pro

Organizations

@modernpoacher

Block or report modernpoacherlimited

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse

Jonathan Perry

A profile picture of Jonathan Perry

Lead Developer and Founder

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.

Modern Poacher Limited

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.


React

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.)

Node

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 HTTP GET and POST requests

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.

React and Node

Form Data is transformed into JSON documents and JSON documents transformed back into Form Data with shinkansen-transmission.

Jest

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.


Popular repositories Loading

  1. modernpoacherlimited modernpoacherlimited Public