Weekend Reading
Tags: weekendreads, react, typescript, css
Published: 2023-03-11 21:50:30

---
title: Weekend Reading
published: true
date: 2023-03-11 00:00:00 UTC
tags: weekendreads, react, typescript, css
canonical_url: https://www.simonporter.co.uk/posts/weekend-reading
---
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/24mzs5rplvt0vutslkuz.jpeg)
## Hello folks!

It's been a week of React Server Components, so plenty of reading to go around about it!

Maybe worth trying your hand with Next.js 13[^nextjs] to see what the fuss is about?

* * *

[Kent hosted Dan and Joe](https://www.youtube.com/live/h7tur48JSaw) for a 2 hour live stream to put forward his concerns. Plenty of familiar names turned up to listen in too. Don't have 2 hours spare? [Catch my recap](https://simonporter.co.uk/posts/its-all-about-the-frameworks) from earlier this week.

Dan was already looking for best ways to pitch RSC's. Plenty of information to skim through in this [Twitter thread](https://twitter.com/dan_abramov/status/1631885118355718144).{% twitter 1631885118355718144 %}

Dan started playing with Remix some more (Kent's influence? :grin:) and had some ideas for the Remix team on [implementing React transitions](https://github.com/remix-run/remix/issues/5763).

And for those who have a _lot_ of free time this weekend, Ryan did a [5 hour long in depth stream](https://www.youtube.com/live/QS9yAsv1czg) about server components.

Matt's secret on [understanding TypeScript](https://twitter.com/mattpocockuk/status/1633811575818579968) is out of the bag!

{% twitter 1633811575818579968 %}

Speaking of which, Matt was also putting final touches on his [new TS library](https://twitter.com/mattpocockuk/status/1634128647173861376), 'untypeable'. When you want to type something you don't and won't control.

{% twitter 1634128647173861376 %}

Zach had a great tip I've not seen before for [using Zod for local env type safety](https://twitter.com/zg_dev/status/1633429660389318656). We've had people onboard to our team before and miss required env vars to get things running, this would solve that problem for sure!

{% twitter 1633429660389318656 %}

* * *

## This Week In React

My top picks, make sure to [subscribe](https://thisweekinreact.com/)!

Josh outlines some [common mistakes he's seen](https://www.joshwcomeau.com/react/common-beginner-mistakes/) during his time teaching. I always enjoy Josh's writing style. How many do you remember making, or are making at the moment? :sweat_smile:

Alex writes about how important [component composition](https://alexsidorenko.com/blog/react-prop-drilling-composition/) is to avoid prop drilling. I couldn't agree more with this, keeping components small and composable, and thinking about your component layout more than just how to get data to the component is key for good clean maintainability going forwards. This, ironically, is a good mentality to have for RSC's too![^rsc]

Zod, the TS first schema validator that is literally _everywhere_ right now, just [released a new version](https://twitter.com/colinhacks/status/1632472849960280064). Super neat looking `.ip()` included which I can't wait to try out.

{% twitter 1632472849960280064 %}

* * *

And finally, in [CSS Weekly](https://css-weekly.com/):

Šime writes an interesting article about the pros and cons of using the `::marker` pseudo selector for [custom bullet points](https://css-tricks.com/everything-you-need-to-know-about-the-gap-after-the-list-marker) in lists. It's not as simple as it first seems.

Daniel writes about the [proper use of alt text for accessibility](https://www.a11yproject.com/posts/are-you-making-these-five-mistakes-when-writing-alt-text), something I'm likely failing on with my blog and will need to revisit. Do you?

Here's a neat little app for [testing custom scroll bars](https://scrollbar.app/). I really like the simple design here too.

Have a wonderful weekend!

* * *

[^nextjs]: My blog is built with Next.JS 13 and RSC, and it was an interesting set up and shift in thinking. Worth giving a go.
[^rsc]: While you can't import server components in child components with RSC, you can pass them as props using the standard `{children}` prop!