DEV Community

Ryan Carniato
Ryan Carniato

Posted on • Updated on

State of Solid - March 2021

It's been a while since I wrote a dedicated article on Solid. Mostly because the technology has been stabilizing. However, that doesn't mean a lot hasn't been going on. In the name of visibility, I thought I'd draw your attention to the main ones.

Hot Demo

https://hackernews.ryansolid.workers.dev/

Showcasing all the technology I've been working on including SSR Suspense, Progressive (Streaming) rendering, Vite build (more on this later), all running from a Cloudflare worker.

But the real deal is the showcase of this progressive rendering approach into seamless SPA navigation with parallel render-as-you-fetch. This Hackernews demo is probably the fastest isomorphic SPA version out there.

Solid Playground now using Monaco

https://playground.solidjs.com/

Now uses the Monaco editor like other popular solutions out there. This means slicker editing and better styling. Big shoutout to @modderme123 and @amountonbrady for getting this out there.

Vite Plugin Solid

https://github.com/amoutonbrady/vite-plugin-solid

We've been working a lot on a new Solid starter to replace our current CRA fork. In the meanwhile, you can get started with this plugin thanks to the tireless work of @amountonbrady.

It has our latest approach to HMR a first in Solid dev. It does lose nested state but it maintains outer application, for super-quick updates in Vite.

Solid Start

Speaking of Vite. Our new starter is in the works. It will support Solid's Progressive Rendering SSR out of the box, and automatic File-Based routing, with nested routes, automatic code-splitting, and parallelized fetch-as-you-render.

This is a true isomorphic experience with Suspense and concurrent rendering on both client/server.

We are also taking a page from SvelteKit with adaptors for different deployment environments.

We have a few more surprises in store before long including some features that will help getting started even easier including route-based API automation (for those looking for a return to the monolith). We will keep you posted as things progress.

Testing and More

Solid Jest
Solid Testing Library
Storybook Example

There has been a desire to improve the testing story around Solid and now we have some options. Solid Jest expands capability for testing client and server versions of Solid. Solid Testing Library is the quintessential library for making testing easier.

Finally, @rturnq has put together an updated template of using Solid with Storybook.

Community Growth

The last few months have seen a swell in adoptions. Last summer we hit 50k npm downloads since I first opened sourced the project in April 2018. Now we get that monthly. Solid has recently reached 5.5k stars on Github but most importantly is reaching a level of contributors similar to popular libraries:

Podcasts

I'm always writing articles but I've finally got the change to appear on some podcasts and youtube channels. If you missed it here is a great one on reactivity with InDepth:

And another one I did recently with @zaiste:

Tomorrow I will be joining Maksim Ivanov to see what it takes to migrate a React app to Solid.

Solid 1.0

https://github.com/ryansolid/solid

It's coming. APIs are stabilizing. The website with docs and interactive tutorials is well in the works. Solid 1.0 Release Candidate is slated to go out early next month.


I think that's all for now. With a bit of luck, these sorts of updates will be a more regular thing.

Top comments (0)