![]() 🚨 We’re hiring part-time writers to help us tell the stories of the JavaScript ecosystem on the ui.dev YouTube channel. If you like writing, money, and This week, we’ve got mono(repos), JavaScript reptiles, and a whole bag of zags. Welcome to #98.
Developers still using Lerna RIP in peace, LernaLast 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 youCongrats! 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 hellThe 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. JobsLoops is looking for founding full-stack Next.js engineersMost 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! Senior or Staff Frontend Engineer - React (100% Remote)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 SoftwareSema 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.
Cool Bits
🔬 Spot the Bug Solution — Sponsored by Sema SoftwareJavaScript doesn’t allow class constructors to be
|