How I built a new platform with all the latest libraries

Sandro Maglione

Sandro Maglione

Software development

I like to work on the extreme cutting edge of newest technologies πŸ§‘β€πŸ’»

My latest project uses:

  • NextJs 15 (rc)
  • React 19 (rc)
  • Tailwindcss v4 (alpha)
  • Effect (platform, schema, rpc, rpc-http)
"dependencies": {
  "@effect/platform": "^0.58.20",
  "@effect/platform-node": "^0.53.19",
  "@effect/rpc": "^0.31.20",
  "@effect/rpc-http": "^0.29.20",
  "@effect/schema": "^0.68.17",
  "effect": "^3.4.7",

  "next": "15.0.0-rc.0",

  "react": "19.0.0-rc-f994737d14-20240522",
  "react-dom": "19.0.0-rc-f994737d14-20240522",
  /// ...
},
"devDependencies": {
  "@tailwindcss/postcss": "4.0.0-alpha.16",
  "tailwindcss": "4.0.0-alpha.16",
  /// ...
}

Here is how the future looks like (as of now) πŸ‘‡


React 19 & NextJs 15

First things first: React 19.

I have been talking about it for a while now. It's game changing!

  • Server components: this requires to completely change how you envision a frontend app with react
  • useActionState: Dealing with forms and async requests will never be the same again
  • Server actions: call a function, but it runs on the server

This is what happens in practice:

  • Less need for client-side fetching hooks (e.g. TanStack Query or swr)
  • More "backend" (server) logic moving to the frontend as well
  • How you visualize your app changes: there is the "server" world and the "(use) client" world now
  • Browser APIs are not always available anymore (window does not exist on the server)

My apps are now organized in:

  • "server": built using effect around services, layers, runtime, and dependency injection
  • "boundary": server components executing server logic and rendering jsx
  • "client": state management and client hooks, everything that requires "use client"

Full stack effect

You may be tired now, but I repeat again: Effect will be everywhere soon.

I am diving deep more and more myself:

  • Staring from effect core and some @effect/schema here and there
  • Adding @effect/platform because it's great for everything http and file system
  • Discovering @effect/rpc that quickly becomes part of my client/server stack

The future may then bring even more:

  • SQL: everything around @effect/sql and related packages (e.g. sql-pg, sql-mysql2, sql-sqlite)
  • Testing: @effect/vitest
  • Cluster: the (possibly) biggest of all, you really should pay close attention to this @effect/cluster

Typeonce

What's my latest project you ask?

It's called Typeonce, the new home for my tech content online:

  • Courses: full step by step courses about everything that you read on my blog and socials
  • Snippets: copy-paste code that you can use for your projects
  • Workshops: live events where we go deep about a specific technology

My first course about effect is coming real soon πŸ”œ

Looking for support for your team?

Typeonce is also the name of my new team training service.

I offer my personal support to make you and your team more productive and effectiveI offer my personal support to make you and your team more productive and effective

Sounds like something interesting? Go over to typeonce.dev to get started.

There is more.

Every week I build a new open source project, with a new language or library, and teach you how I did it, what I learned, and how you can do the same. Join me and other 700+ readers.

Tailwindcss v4

Closing the loop we have the new version of tailwindcss (still in alpha πŸ’πŸΌβ€β™‚οΈ).

CSS-native features and tailwindcss are converging to make CSS great (again)!

I don't bother anymore with CSS "js" configurations or whatever. With tailwindcss v4 everything is in CSS land, starting from your styles and custom values.

Expect some interesting updates for a beta this summer:

Adam Wathan (author of tailwindcss) on Github discussion answering about updates to v4Adam Wathan (author of tailwindcss) on Github discussion answering about updates to v4


Be ready for a lot of new content on Typeonce.

I am also in the process of refactoring sandromaglione.com, where I will share more "general" (aka "personal") content and articles.

As always, you will always be the first to learn about cool new updates and offers as part of this newsletter πŸš€

See you next πŸ‘‹

Start here.

Every week I build a new open source project, with a new language or library, and teach you how I did it, what I learned, and how you can do the same. Join me and other 700+ readers.