263f401172a4b49935e7b70b36a9db29404c032f
<!-- CURSOR_SUMMARY --> > [!NOTE] > Reorders the collapse useEffect to run before the token-savings early return so hooks are always called unconditionally. > > - **Frontend** > - **`src/components/chat/DyadThink.tsx`**: > - Move collapse `useEffect` above the token-savings early return to ensure hooks are called unconditionally. > - Maintains collapse behavior when `inProgress` transitions to false. > - `DyadTokenSavings` rendering path remains unchanged. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit a6c7d20ab037043bff26deec1364f2d9008fbf33. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
Dyad
Dyad is a local, open-source AI app builder. It's fast, private, and fully under your control — like Lovable, v0, or Bolt, but running right on your machine.
More info at: http://dyad.sh/
🚀 Features
- ⚡️ Local: Fast, private and no lock-in.
- 🛠 Bring your own keys: Use your own AI API keys — no vendor lock-in.
- 🖥️ Cross-platform: Easy to run on Mac or Windows.
📦 Download
No sign-up required. Just download and go.
👉 Download for your platform
🤝 Community
Join our growing community of AI app builders on Reddit: r/dyadbuilders - share your projects and get help from the community!
🛠️ Contributing
Dyad is open-source (Apache 2.0 licensed).
If you're interested in contributing to dyad, please read our contributing doc.
Description
Languages
TypeScript
97.4%
JavaScript
1.6%
CSS
0.6%
Shell
0.2%