This is a fun little JS project. If you recognise it, it’s not going to be a public thing. I'm just messing with it because I think the algorithms will be interesting.
Very early days, but I went for it in terms of abstractions. There's a “draw an area of cell type A around a specified cell type B with maximum radius X" function, which pretty much everything else will use.