Juno Equity Landing Page

Launched: May 23, 2020
Built with: Vite, Bulma, React, Typescript

This was a project that was not particularly hard and wound up with a relatively simple (and over-engineered) final output, but it was a nice task to break back into doing some non-work development. Last year I secured a domain for my sister-in-law's new business and set her up with email service, but she needed a simple landing page to bridge the time until she decided on a more full-featured site.

I fully acknowledge that this could've been a static bundle of HTML, CSS, and images, but since this was a short-term project with very limited scope, I decided to try out a few things (thus the over-engineering and a detour into building a config package). Specifically I wanted to try out vite in React mode to see how its module approach worked out in place of CRA. It certainly seemed nice enough: bootstrapping the app without issue, supporting TypeScript by default, easily importing random file types (sadly I wasn't able to test the speed of esbuild with such a small project). I was a little concerned about having to use the Pika managed react builds (@pika/react, etc), but I get that this is necessary in order to accommodate the module-only approach of vite.

This problem reared its head again almost immediately for me though, as I wanted to try out the Grommet design library but it relies on styled-components which doesn't export a module build and thus didn't play nicely with vite and I didn't want to further derail into setting up snowpack or something to create es-module wrappers of libraries. I anticipate this being an annoyance for a while as major libraries can be slow to convert their build pipelines and trusting managed module-ifying rebuild packages isn't ideal. But this whole approach is interesting and it was otherwise painless; I switched to rbx/Bulma to quickly through some basic styling/structure to the page and got things working fine (though I do feel bad about the pageweight at this point).

Check it out at Juno Equity.