Today’s issue: Our benevolent Type God, selective memory, and AI Peyton Manning breaking my heart.
Welcome to #407.
When you tell the ladies you're an open-source database contributor
How do you eat an elephant? One bite at a time, obviously.
How do you rewrite SQLite from scratch in Rust? No idea tbh, but the mad lads at Turso are doing it anyway – and they just released their very first alpha.
But before we break down how they’re doing it, let’s answer a more interesting question: Why?
SQLite is arguably the most reliable piece of software on the planet, but it wasn’t built for many of the demands of modern applications. It struggles with concurrent writes, its synchronous API doesn’t play nice in browsers, and it lacks solid support for things like vector search and streaming changes.
Hypothetically, SQLite could evolve and address these challenges on its own, but they’ve chosen to prioritize stability over all else – and the very-much-closed nature of its open-source community means you probably have a better chance of being invited to join the Illuminati than you do of successfully submitting a SQLite contribution.
So Turso decided to start fresh. Their Rust-based rewrite aims to keep everything people love about SQLite, while adding new features that allow it to play nice with modern workloads like AI agents, real-time apps, and anything else that needs concurrency to just work.
This first alpha includes support for all the basic SQLite features, plus Turso’s key differentiators:
Async all the way down – A modern, asynchronous API replaces SQLite’s old-fashioned blocking calls, so you can use Turso seamlessly in browsers and serverless runtimes.
Native vector search – Built-in support for vector embeddings, which is perfect if you’re building AI or ML apps and don’t want to glue on extra dependencies.
SQLite-esque reliability – Turso uses a combination of deterministic simulation testing and autonomous testing to hammer edge cases and make sure it’s just as reliable as SQLite. They’re so confident that they’ll pay you $1,000 if you can find a corruption bug.
Bottom Line: A “Rust-based rewrite of SQLite” is either one of the most ambitious open-source projects of our time, or it’s the greatest nerd honeypot ever devised. Either way, you have to respect the hustle.
![]() ![]() ![]() ![]() |
When the product team's strategy is just ✨vibes✨
Traditional observability tools focus on infrastructure and backend services, but they miss the #1 most critical piece – what your users actually experience.
That’s where Embrace comes in. Their new Web RUM solution turns every user tap, swipe, and click into real-time insights that help you measure and improve end-user experiences.
But how is it different from other monitoring tools?
Full visibility into every user session – See how things like Core Web Vitals, exceptions, and custom events impact your users and revenue
Built for web and mobile – Get deep insights across platforms without having to stitch together multiple tools (watch the demo)
Built on open standards like OpenTelemetry – You get context-rich data that you can control, not just charts and a black box
Try it for free – and see why companies like Pinterest, Hyatt, and Wondery rely on Embrace.
They created this step-by-step guide on How to build an AI coding rules app with Clerk, Lovable, and Supabase that’s fully secure and ready to ship.
const mockAPIData = {
items: [
{ id: 1, price: 100 },
{ id: 2, price: 200 }
]
};
class DataCache {
constructor() {
this.cache = new Map();
}
getData(key) {
if (!this.cache.has(key)) {
this.cache.set(key, mockAPIData);
}
return this.cache.get(key);
}
calculateTotal(data) {
data.items.forEach(item => {
item.price = item.price * 1.2;
});
return data;
}
}
const cache = new DataCache();
const data = cache.getData('products');
const withTax = cache.calculateTotal(data);
console.log('Before tax calculation:', data.items[0].price);
console.log('With tax:', withTax.items[0].price);
Zod creator Colin McDonnell just expanded his dominion over the TypeScript ecosystem by releasing zshy – a no-bundler build tool for transpiling TS libraries. All hail our benevolent Type God 🧎♂️.
Optimeist automatically optimizes your AWS Lambdas to reduce costs. You just drop in their generated API key, and it instantly detects your Lambdas and fine-tunes their memory, timeout, and configs based on real usage – no manual tweaks required. It’s basically free money. [sponsored]
TanStack Start now has Selective SSR, which goes perfectly with my selective memory about the number of free 7-11 Slurpees I’ve had today (so far).
Daishi Kato created valtio-reactive, a Reactive library built on Valtio to provide a global state solution for React.
Devon Govett wrote about how JavaScript scope hoisting is broken – much like my heart after watching my dad re-post yet another fake AI image of Peyton Manning hugging an old man on Facebook.
React Universe Conf is happening Sept 2-4 with 25+ speakers from Meta, Microsoft, Vercel, and others. You’ll learn about cutting edge advancements in React and React Native, participate in advanced-level workshops, and network with 600+ developers from all over the world. [sponsored]
Kit Langton created Visual Effect – a collection of interactive examples using TypeScript’s Effect library + React.
jsonrepair is a library that can repair invalid JSON documents. Because we all deserve to live in a world where No 👏 JSON 👏 is 👏 invalid 👏.
Mux Co-founder Matt McClure wrote about the brand new Mux MCP, which exposes Mux’s complete API through a self-documenting interface and allows AI agents to upload videos, generate thumbnails, add captions, access engagement data, and more wild stuff like that. [sponsored]
John Dalziel dared to ask the question, when can I use Temporal? But unfortunately, the TC39 committee adds 6 months onto the wait time every time someone asks – so we’re now looking at December 2035. Thanks a lot, John.
Lydia Cho wrote about managing the state of your promises.
React Native Unistyles 3.0 was just released, and it comes with selective updates, support for the new arch, and a majestic unicorn logo whose horn can pierce the sky.
The calculateTotal
method mutates the reference to the original data. This means that the original data is modified in place, which can lead to unexpected behavior. To fix this, you should create a new object in the calculateTotal
method and return that instead of modifying the original data.
Here’s the corrected code:
const mockAPIData = {
items: [
{ id: 1, price: 100 },
{ id: 2, price: 200 }
]
};
class DataCache {
constructor() {
this.cache = new Map();
}
getData(key) {
if (!this.cache.has(key)) {
this.cache.set(key, mockAPIData);
}
return this.cache.get(key);
}
calculateTotal(data) {
const newData = {
items: data.items.map(item => ({
...item,
price: item.price * 1.2
}))
};
return newData;
}
}
const cache = new DataCache();
const data = cache.getData('products');
const withTax = cache.calculateTotal(data);
console.log('Before tax calculation:', data.items[0].price);
console.log('With tax:', withTax.items[0].price);