If you like writing, money, and
Welcome to #98.
Developers still using Lerna
RIP in peace, Lerna
Last week, Lerna officially gave up the ghost and declared that it’s no longer an actively maintained project. It’s always painful to lose a friend, but at least Lerna died doing what it loved — making us wait for it to build.
Let’s take a closer look at what monorepos *actually* do, what happened to Lerna, and where we go from here in a post-Lerna world.
Wtf is a monorepo? Monorepos let you split up large codebases into separate, independently versioned packages. This allows for easy code sharing between packages — which saves a lot of time, overhead, and complexity when working on larger projects with a big team.
That’s why they got their start at big enterprises (Google’s entire codebase is still housed inside one single
Why did Lerna die? The simple answer — it was really slow. One problem with monorepos is that whenever you make a code change, you have to rebuild everything that depends on the module you changed. For huge codebases, that was a huge PITA.
The more complicated answer — the project lacked consistent leadership and maintainers. Other monorepo tools (like NX and Turborepo) solved the slow build problem with creative solutions like remote caching. But without consistent contributors, Lerna wasn’t able to follow suit (it’s not anyone’s fault, OSS is just hard).
The bottom line: Let’s drink to the good times and pour one out for our fallen friend — and the 40,000 GitHub repos that still have Lerna as a dependency. Stay strong.
That’s one powerful back (end as a service) [sponsored]
Appwrite wants to write your backend for you
Congrats! Your team’s app made it to the top of Hacker News, and now you’ve got traffic coming out your eyeballs 🎉. There’s only one problem…
You went with a “usage-based” pricing plan for your hosting — and all that traffic just ate up the rest of the cash in your company bank account (RIP in peace).
Should’ve used Appwrite.
Appwrite is a self-hosted BAAS (backend as a service) platform that gives you a collection of easy-to-use REST APIs that abstract away all the complex and repetitive parts of building a secure backend.
And since it’s packaged as a set of (open-source) Docker microservices, you can host it however you want and not have to worry about getting burned by usage-based pricing.
It handles all of hairy stuff for you, so you can easily integrate your app with multiple user auth methods, set up a DB for storing and querying user data, and a lot more.
I guess that’s why they called it Appwrite. Finally makes sense now.
Did somebody order a whole bag of zags?
Zag.js can save us from design system hell
The king of design systems, Sengun Adebayo, was back at it again last week with Zag.js — a framework agnostic toolkit for building complex interactions.
How did we get here? Sengun created Chakra, one of the most popular component libraries for React. It got popular enough that developers started asking them to support other frameworks, because if you give a mouse a cookie, he’s always gonna ask for Vue.
But it turns out that supporting UI interactions across frameworks is… not easy. That’s where Zag comes in. It allows you to share the “behavior” of the component while leaving the rest of the UI (styles and markup) to the framework of your choice.
To make that magic happen, Zag does some pretty cool stuff under the hood:
The bottom line: If you’re lucky/unlucky enough to be working on design systems, Zag seems like a godsend. For the rest of us, we’re wondering if web components will ever find love after facing yet another cross framework rejection.
Most email platforms are showing their age — heck, this email was sent via a platform that is 9 years old now! Loops is a modern and beautiful alternative for SaaS companies. Our stack is Next.js, Postgres, and Tailwind. We just wrapped YC and our seed funding raise led by Craft Ventures. Come join our core engineering team!
Close.com is looking for 3 experienced individuals that have a solid understanding of React and want to help design, implement and launch major user-facing features. Close is a 100% globally distributed team of ~55 high-performing, happy people that are dedicated to building a product our customers love.
🔬 Spot the Bug — Sponsored by Sema Software
Sema just published this white paper on why code reviews matter and how to integrate them effectively into your team and organization. It’s a great read.
🔬 Spot the Bug Solution — Sponsored by Sema Software
Delivered to 112,202 developers every Monday
This is the first ever newsletter that I open a music playlist for and maximize my browser window just to read it in peace. Kudos to @uidotdev for great weekly content.
The Bytes newsletter is a work of art! It's the only dev newsletter I'm subscribed too. They somehow take semi boring stuff and infuse it with just the right amount of comedy to make you chuckle.
Bytes has been my favorite newsletter since its inception. It's my favorite thing I look forward to on Mondays. Goes great with a hot cup of coffee!
I subscribe to A LOT of dev (especially JS/TS/Node) newsletters and Bytes by @uidotdev is always such a welcomed, enjoyable change of pace to most (funny, lighthearted, etc) but still comprehensive/useful.
Literally the only newsletter I’m waiting for every week.
Bytes is the developer newsletter I most look forward to each week. Great balance of content and context! Thanks @uidotdev.
The sense of humor and structure of the Bytes Newsletter is first class and the information that comes with it is enough to make a mini course.
Very few newsletters manage to be useful and not very boring. @uidotdev manages to achieve these pretty effortlessly. You can almost see Tyler chuckle as he writes them.