<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk" -->

---
title: Cursor dumps Solid, birthday ruined | daily.dev
description: Cursor has migrated its editor codebase off Solid.js and onto React, according to Cursor engineer and former React Core Team member Lauren Tan, who cited...
canonical: https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Cursor dumps Solid, birthday ruined | daily.dev
og:description: Cursor has migrated its editor codebase off Solid.js and onto React, according to Cursor engineer and former React Core Team member Lauren Tan, who cited...
og:url: https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk
og:image: https://api.daily.dev/og/posts/UrFBmgatk.png
og:image:alt: Cursor dumps Solid, birthday ruined
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Cursor dumps Solid, birthday ruined

**[Bytes by ui.dev](https://daily.dev/sources/bytesdev)** · 5 min read · 0 upvotes · 0 comments

## Summary

Cursor has migrated its editor codebase off Solid.js and onto React, according to Cursor engineer and former React Core Team member Lauren Tan, who cited signals-based performance footguns but mainly noted that coding agents write more predictable React code in complex codebases. This news landed the same week Solid.js shipped its Solid 2.0 RC, the biggest rework in the framework's history, adding first-class async support (Promises/async iterators in createMemo), a replacement for Suspense called Loading plus isPending() for background refresh tracking, and new mutation primitives like action() and createOptimisticStore. The roundup also covers a grab-bag of other links: Lovable's migration from Next.js to TanStack Start, an investigation into LLM token brokers reselling discounted tokens, a CSS paint-order trick, a CSS-based email exploit writeup, React Native OTA update best practices from Expo, pnpm 12 RC rewritten in Rust, a new CSS Custom Highlights API-based syntax highlighter, Convex's $57m Series B raise, Yelp's Flow-to-TypeScript monorepo migration, Vitest 5's default clearMocks change, and Shopify's 'gisting' technique for compressing LLM context.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://bytes.dev/archives/513>

## Questions this post answers

### Why did Cursor migrate its codebase from Solid.js to React?

Cursor engineer Lauren Tan, a former React Core Team member, confirmed the migration and cited signals-based performance footguns in Solid as one reason, but the main driver was that AI coding agents are better and more predictable at writing React code, especially in complex codebases. The move happened the same week Solid shipped its 2.0 release candidate.

_Developers weighing framework choices around AI-agent compatibility can follow this kind of tradeoff on daily.dev._

### What are the biggest new features in Solid 2.0?

Solid 2.0 RC makes async first-class, letting computations return Promises or async iterators that the reactive graph automatically suspends and resumes, including passing a Promise directly into createMemo. It replaces Suspense with a Loading component that only covers first render plus an isPending() function for tracking background refreshes, and adds mutation primitives like action() and createOptimisticStore for optimistic updates.

_Teams evaluating a Solid 2.0 upgrade can track framework release details like this on daily.dev._

### What changed in Vitest 5?

Vitest 5 enables clearMocks by default, automatically clearing mock call history between tests without needing to configure it manually, along with a handful of other developer-experience improvements. This is a notable default-behavior change for teams relying on Vitest for JavaScript and TypeScript testing.

_Keep pace with testing framework defaults like this Vitest 5 change through daily.dev._

## Similar posts on daily.dev

- [SolidJS 2.0 Beta: First-Class Async, Reworked Suspense and Deterministic Batching](https://daily.dev/posts/solidjs-2-0-beta-first-class-async-reworked-suspense-and-deterministic-batching-6xuwssawz) · InfoQ · 0 upvotes · 0 comments
- [This Week In React \#300: Next.js, TanStack, React Foundation, Compiler, Ink, Streamdown, Shaders](https://daily.dev/posts/this-week-in-react-300-next-js-tanstack-react-foundation-compiler-ink-streamdown-shaders-pplejwejp) · This Week In React · 4 upvotes · 0 comments

---

Tags: [#javascript](https://daily.dev/tags/javascript), [#react](https://daily.dev/tags/react), [#vibe-coding](https://daily.dev/tags/vibe-coding), [#solidjs](https://daily.dev/tags/solidjs)

[View this post on daily.dev](https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Cursor dumps Solid, birthday ruined","url":"https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk"},"datePublished":"2026-08-19T21:33:27.333Z","dateModified":"2026-08-19T22:08:27.668Z","description":"Cursor has migrated its editor codebase off Solid.js and onto React, according to Cursor engineer and former React Core Team member Lauren Tan, who cited...","image":"https://media.daily.dev/image/upload/s--foaA6JGU--/f_auto/v1722860399/public/Placeholder%2004","thumbnailUrl":"https://media.daily.dev/image/upload/s--foaA6JGU--/f_auto/v1722860399/public/Placeholder%2004","isAccessibleForFree":true,"articleSection":"Bytes by ui.dev","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Bytes by ui.dev","logo":"https://media.daily.dev/image/upload/s--wMrI6PMo--/f_auto/v1718347131/logos/bytesdev","url":"https://daily.dev/sources/bytesdev"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"javascript,react,vibe-coding,solidjs","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Bytes by ui.dev","item":"https://daily.dev/sources/bytesdev"},{"@type":"ListItem","position":3,"name":"Cursor dumps Solid, birthday ruined"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/cursor-dumps-solid-birthday-ruined-urfbmgatk#faq","mainEntity":[{"@type":"Question","name":"Why did Cursor migrate its codebase from Solid.js to React?","acceptedAnswer":{"@type":"Answer","text":"Cursor engineer Lauren Tan, a former React Core Team member, confirmed the migration and cited signals-based performance footguns in Solid as one reason, but the main driver was that AI coding agents are better and more predictable at writing React code, especially in complex codebases. The move happened the same week Solid shipped its 2.0 release candidate. Developers weighing framework choices around AI-agent compatibility can follow this kind of tradeoff on daily.dev."}},{"@type":"Question","name":"What are the biggest new features in Solid 2.0?","acceptedAnswer":{"@type":"Answer","text":"Solid 2.0 RC makes async first-class, letting computations return Promises or async iterators that the reactive graph automatically suspends and resumes, including passing a Promise directly into createMemo. It replaces Suspense with a Loading component that only covers first render plus an isPending() function for tracking background refreshes, and adds mutation primitives like action() and createOptimisticStore for optimistic updates. Teams evaluating a Solid 2.0 upgrade can track framework release details like this on daily.dev."}},{"@type":"Question","name":"What changed in Vitest 5?","acceptedAnswer":{"@type":"Answer","text":"Vitest 5 enables clearMocks by default, automatically clearing mock call history between tests without needing to configure it manually, along with a handful of other developer-experience improvements. This is a notable default-behavior change for teams relying on Vitest for JavaScript and TypeScript testing. Keep pace with testing framework defaults like this Vitest 5 change through daily.dev."}}]}
```

