One thing that really excites me is the latest NextJS 10 release. The focus on their vertical integration between infrastructure, client / server framework, and tech partnerships such as with the Google Chrome team is fascinating.
Their eye for design, even though not perfect, is pretty good in comparison to their competitors. They focus on a very specific set of features, and polish them to no end. They don’t want to compete in every single domain there is in web hosting, but think about the problems a typical product engineer has to get stuff done. Just have a look at their new Analytics Landing Page .
Pretty clean and sleak.
Their focus lies on making sure that both, the developers and users get the most out of it by making builds fast, reliable, quantifiable, while still giving their users flexibility in their hosting options. If you look at e.g. Gatsby, they are actually doing the exact opposite: Make the tech stack so hard to understand, so convoluted that you actually have no choice than buying into their Gatsby cloud service, to have at least some acceptable build times.
Designing dev environments with tools and APIs that are easy to understand, but still powerful enough to cover all the use-cases, is a pretty hard discipline. I know Next is not perfect, but in the last few years it has really grown on me on how well they advanced their platform, especially when you think about their upgrade paths with every major upgrade.
rescript-lang.org runs on Next, and since with version 10 there are some interesting new features, such as builtin internationalization, I am really looking forward trying that out.
Besides, I found a lot of subtle flaws within my current ReScript / Next setups, and I can’t wait to update the rescript-next-template to the newest version to make e.g. fast-refreshing more reliable in the future.
Another tool that currently peaked my interest is vite by the creator of VueJS. It’s a pretty straightforward webpack-like dev-server / bundler frontend, that doesn’t really bundle during dev times, but leverages the ES6 module import mechanism and
<script type="module"> to lazy load JS scripts instead. It also has postcss builtin, so it’s pretty easy to wire up other tools like Tailwind. Now, drop ReScript into the mix, and you are up for a jolly ride with almost zero complexity, and in comparison to today’s JS standards, an insanely fast development workflow.
A vite setup can (IMO) be a potential default template for a bootstrapped ReScript / React app if you ask me.
Generally I am pretty positive about the future, hopefully the new generation of JS tooling will try to keep the feature set small, instead of bloating their APIs for no apparent reason (just because it is “cute”) and f* everything up. At least for
vite, afaikt, the maintainer seem to be pretty conservative about adding “preferential options”, just to make sure that the community has one way of doing things.
To sum things up, I guess building products has never been that easy.