Andrew
Walpole
Principal Web
Developer &
Engineering
Manager
Designer
Leader
Teacher
Learner
Maker
MFM.rocks
Overview
MFM.rocks is a passion project of mine started back in 2018. The site showcases an underlying robust-first computational model called the Movable Feast Machine, designed by Dr. Dave Ackley. I have rebuilt the conceptual model, first in JavaScript and then migrated over into TypeScript. While the underlying MFM library is all done in TypeScript, it compiles down to ES6 and can be implemented client-side. In this case, pixi.js and Vue bring the main interface to life while running the MFM library under the hood.
https://t.co/FHo9ezMzST is starting to grow quite a diverse petri dish of living-systems experiments. Most notably here are Mosquito, Fly, Bird, Looper, Wonky Looper and the newest addition OfSwamp, which consists of Swamp, Swamplings and Swamp Workers. pic.twitter.com/bDnXNM8Ee7
— Andrew Walpole (@walpolea) March 9, 2022
Challenges
The main challenge has been squeezing performance out of the project. Since the computational model relies on random execution, many tricks for rendering optimization go out the window. But with the use of pixi.js and some computational caching, I have ben able to optimize the performance down many times over the duration of the project.
Beyond performance, the way elements are built and composed really pushed me to learn some advanced OOP concepts within TypeScript. I relied heavily on various factory patterns to enable elements to modify sites on the grid.
Tech Stack
- TypeScript
- pixi.js
- Vue