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.
Ryan Carniato@ryancarniatoWe've been working on a demo I hope checks the boxes:
* @solid_js + TypeScript + JSX
* Built with @vite_js
* Streaming SSR on Cloudflare Worker
* Suspense + concurrent rendering
* Code splitting w/ route preloading
* 12.4kb JS payload
Demo: hackernews.ryansolid.workers.dev10:46 AM - 09 Mar 2021
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.
Ryan Carniato@ryancarniatoThis is pretty typical of the difference between progressive rendering (streaming) and typical SSR. Still incredible performance and both come in at about 12kb and are served from @Cloudflare.
(I do need to replace the theme I borrowed off of Vue to top up the accessibility)17:36 PM - 12 Mar 2021
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.
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.
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.
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.
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:
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.
Maksim Ivanov@ivanov_devAdd the stream to your calendar: youtu.be/p8e9ta269x812:00 PM - 29 Mar 2021
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.