Eucalypt is a Reagent-like UI library for Squint that doesn't depend on React. I've got the Eucalypt test suite fully running under Reagent now. This is so I can make sure it behaves the same as Reagent for any given form. Unfortunately this has swelled the gzipped binary size from 9kb to 13kb (and the example html demos by the same amount). I'm hesitating to merge these changes into main because of the size change. Am I being too worried about the size increase? Opinions welcome.
Is it squint or eucalypt that made these size changes? 13kb sounds not too crazy to me though, reagami is 5-6kb and has only the vdom + some rendering hooks, reagent is much more than that
It's Eucalypt. When I use latest squint on main it's still 9kb. There's a specific change that has better support for Reagent forms (don't remember exactly what but I stepped through to figure it out) and that swelled the size.
Is that change something that could be optional or is it integrated with the rest
Hm good question. I'm not sure about taking that route though as the whole point is to be Reagent compatible.
I think it's fine then. reagent compatible
If somebody doesn't want to be Reagent compatible then you have already provided some great small, fast options.
exactly
you're 13% of the original: https://github.com/borkdude/reagami#benchmarks
in size
What I'll probably do is keep pushing forward and fix a few more Reagent things and then 1. try to find some size optimizations 2. do some larger re-architecting work to see if i can squeeze it smaller.
Wow, 100kb - I forgot how much room there is.
Maybe I'll try to add Eucalypt to the Reagami benchmarks.
sure
I also mentioned eucalypt in my reagami talk, let me see if I can find the clip
I mean for your 15kb JS game, reagami probably suffices and you have ~10kb room for your own game
or sorry, 13kb
Yeah it was 13kb so I'm over now if we want to include a game too. My goals have shifted a bit though and I'd ultimately like to have a library I can use in Squint or Scittle without so much overhead. I still need to keep it very small though to make it worthwhile.
for sure
FWIW reagami is one file which loads fine from source in scittle raw from github :)
Oh wow that's cool. I must re-visit it.
I should try running the Eucalypt test suite through Reagami just to see how much is supported.
yeah, or to find bugs in reagami for that part that is supposed to be supported, also great
Updated the projects + libraries list https://github.com/squint-cljs/squint#projects-using-squint If you have a project or library to share, I'll happily add it