<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Devonauts Blog</title>
<link>https://devonauts.com/blog/</link>
<description>Plain-language guides for people who built an app with Lovable, Bolt, Cursor, v0 or Replit: finding what broke, making it safe and getting it live.</description>
<language>en</language>
<atom:link href="https://devonauts.com/blog/rss.xml" rel="self" type="application/rss+xml"/>
<item><title>How to add a real backend and database to a v0 app</title><link>https://devonauts.com/blog/add-database-to-v0-app/</link><guid>https://devonauts.com/blog/add-database-to-v0-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Connect Supabase, Neon or Upstash to a v0 app, replace mock data with real queries, keep secret keys on the server and protect each user's rows.</description></item>
<item><title>How to secure your app's admin panel</title><link>https://devonauts.com/blog/admin-panel-security/</link><guid>https://devonauts.com/blog/admin-panel-security/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to protect an app's admin panel: roles checked on the server, where to store them in Supabase, two-factor for admins, audit logs and least privilege.</description></item>
<item><title>An AI coding agent deleted my files or data: what now?</title><link>https://devonauts.com/blog/ai-agent-deleted-files/</link><guid>https://devonauts.com/blog/ai-agent-deleted-files/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What to do right after an AI agent deletes files or database data, how to recover from git, checkpoints and backups, and settings that prevent a repeat.</description></item>
<item><title>How to use Cursor or Claude Code on a large codebase</title><link>https://devonauts.com/blog/ai-coding-agent-large-codebase/</link><guid>https://devonauts.com/blog/ai-coding-agent-large-codebase/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Why AI agents drift in big projects and how to keep control: a project map, plan mode, scoped tasks, less noise, reviewable diffs and fresh sessions.</description></item>
<item><title>How to set up analytics in your web app (and respect privacy)</title><link>https://devonauts.com/blog/analytics-for-your-web-app/</link><guid>https://devonauts.com/blog/analytics-for-your-web-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Decide what to measure, pick the few events that matter, choose a tool, send payment events from the server and handle consent without over-collecting.</description></item>
<item><title>API key exposed in your frontend? How to tell and fix it</title><link>https://devonauts.com/blog/api-key-exposed-in-frontend/</link><guid>https://devonauts.com/blog/api-key-exposed-in-frontend/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to check whether a secret API key ships in your app's browser code, which keys are meant to be public, and how to move the secret ones to a server.</description></item>
<item><title>App emails going to spam? Fix SPF, DKIM and DMARC</title><link>https://devonauts.com/blog/app-emails-going-to-spam/</link><guid>https://devonauts.com/blog/app-emails-going-to-spam/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Why your app's sign-up, reset and receipt emails land in spam, how to set up SPF, DKIM and DMARC, and how to check that Gmail and Yahoo trust them.</description></item>
<item><title>How much does it cost to maintain an app each month?</title><link>https://devonauts.com/blog/app-maintenance-cost/</link><guid>https://devonauts.com/blog/app-maintenance-cost/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>The monthly costs of keeping an app running: hosting, database, store fees, third-party services and developer time, with official prices and budget tips.</description></item>
<item><title>Base44 limitations: when should you move to your own code?</title><link>https://devonauts.com/blog/base44-limitations-when-to-move/</link><guid>https://devonauts.com/blog/base44-limitations-when-to-move/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Where Base44 fits and where it pinches: backend, data access, backups, credits and code control. The signs it's time to move, and options short of a rebuild.</description></item>
<item><title>How to beta test your app with real users</title><link>https://devonauts.com/blog/beta-testing-your-app/</link><guid>https://devonauts.com/blog/beta-testing-your-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to run a beta: picking testers, TestFlight and Google Play testing tracks, what to ask, how to collect feedback and bugs, and when the beta is done.</description></item>
<item><title>Bolt.new breaks your app with every change? How to stop it</title><link>https://devonauts.com/blog/bolt-new-breaks-app-on-every-change/</link><guid>https://devonauts.com/blog/bolt-new-breaks-app-on-every-change/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Why each Bolt.new prompt can break features that worked, what to do the moment it happens, and a routine of locks, versions and tests that stops regressions.</description></item>
<item><title>Change your Bolt.new database safely: migrations, not edits</title><link>https://devonauts.com/blog/bolt-new-database-migrations/</link><guid>https://devonauts.com/blog/bolt-new-database-migrations/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to change tables in a Bolt.new app without losing data: back up first, write each change as a reviewed SQL migration, avoid risky edits and verify after.</description></item>
<item><title>Environment variables in Bolt.new: what goes where</title><link>https://devonauts.com/blog/bolt-new-environment-variables/</link><guid>https://devonauts.com/blog/bolt-new-environment-variables/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Which values in a Bolt.new app can live in the browser, which must stay in Secrets, how VITE_ and other prefixes work, and how to check that nothing leaked.</description></item>
<item><title>Bolt.new deploy to Netlify failed? How to read the log</title><link>https://devonauts.com/blog/bolt-new-netlify-deploy-failed/</link><guid>https://devonauts.com/blog/bolt-new-netlify-deploy-failed/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Where to find the real error when a Bolt.new project fails to publish to Netlify, the causes behind most failures, and how to fix and confirm each one.</description></item>
<item><title>npm dependency errors in Bolt.new: causes and fixes</title><link>https://devonauts.com/blog/bolt-new-npm-dependency-errors/</link><guid>https://devonauts.com/blog/bolt-new-npm-dependency-errors/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What ERESOLVE, native addon, 404 and lockfile errors mean in a Bolt.new project, how to fix each one safely and how to keep package versions from drifting.</description></item>
<item><title>Bolt.new project too large? Tokens, context and fixes</title><link>https://devonauts.com/blog/bolt-new-project-too-large-tokens/</link><guid>https://devonauts.com/blog/bolt-new-project-too-large-tokens/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Why Bolt.new says your project is too large, how context and token limits differ, and the steps that shrink a project so you can keep building.</description></item>
<item><title>Bolt.new app can't connect to Supabase? What to check</title><link>https://devonauts.com/blog/bolt-new-supabase-connection-error/</link><guid>https://devonauts.com/blog/bolt-new-supabase-connection-error/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Why a Bolt.new app fails to reach Supabase: missing URL or key, the wrong key type, RLS blocking reads, a paused project or auth URLs. How to find and fix each.</description></item>
<item><title>Add user roles and a real admin panel to a Bolt.new app</title><link>https://devonauts.com/blog/bolt-new-user-roles-admin-panel/</link><guid>https://devonauts.com/blog/bolt-new-user-roles-admin-panel/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to store roles where users can't change them, enforce them with RLS and server functions, and build a Bolt.new admin panel that is more than a hidden page.</description></item>
<item><title>Claude Code vs Cursor: which is easier if you don't code?</title><link>https://devonauts.com/blog/claude-code-vs-cursor-non-developers/</link><guid>https://devonauts.com/blog/claude-code-vs-cursor-non-developers/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>A plain comparison of Claude Code and Cursor for founders who don't program: how each works, setup, safety settings, October 2026 pricing and which to pick.</description></item>
<item><title>How to control the cost of AI API calls in your app</title><link>https://devonauts.com/blog/control-ai-api-costs/</link><guid>https://devonauts.com/blog/control-ai-api-costs/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Where AI API spending comes from, how to measure it per feature and per user, and the limits, caching, model choices and batch jobs that keep the bill in check.</description></item>
<item><title>Core Web Vitals for an AI-built app: what to fix first</title><link>https://devonauts.com/blog/core-web-vitals-for-your-app/</link><guid>https://devonauts.com/blog/core-web-vitals-for-your-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What LCP, INP and CLS measure, the targets Google uses, why apps made with Lovable, Bolt or v0 often miss them, and the fixes that move each one.</description></item>
<item><title>CORS error explained: why it happens and how to fix it</title><link>https://devonauts.com/blog/cors-error-explained/</link><guid>https://devonauts.com/blog/cors-error-explained/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What a CORS error really means, how to read it in the browser console, the usual causes in AI-built apps, and the server-side fix for Supabase functions.</description></item>
<item><title>How much does it cost to fix an app built with AI?</title><link>https://devonauts.com/blog/cost-to-fix-vibe-coded-app/</link><guid>https://devonauts.com/blog/cost-to-fix-vibe-coded-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What decides the price of fixing a Lovable, Bolt, v0, Replit or Cursor app, the three sizes of fix, how pricing models compare and how to keep the bill down.</description></item>
<item><title>Cursor broke my code: how do I undo the AI's changes?</title><link>https://devonauts.com/blog/cursor-broke-my-code-how-to-undo/</link><guid>https://devonauts.com/blog/cursor-broke-my-code-how-to-undo/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How to roll back changes from Cursor or another AI agent: checkpoints, Claude Code's /rewind, the right git command for each case, and what none of them undo.</description></item>
<item><title>How to write Cursor rules that keep the AI agent on track</title><link>https://devonauts.com/blog/cursor-rules-for-real-projects/</link><guid>https://devonauts.com/blog/cursor-rules-for-real-projects/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Where Cursor rules live, the four rule types, what a useful rule says in a real project, why rules get ignored, and how to test and share them with other tools.</description></item>
<item><title>Data protection basics for app founders: GDPR and CCPA</title><link>https://devonauts.com/blog/data-protection-basics-for-app-founders/</link><guid>https://devonauts.com/blog/data-protection-basics-for-app-founders/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>A plain-words overview of GDPR and CCPA for people launching an app: when they may apply, what they usually ask of you, and the practical steps to start with.</description></item>
<item><title>DNS records explained for founders: A, CNAME, MX, TXT</title><link>https://devonauts.com/blog/dns-records-explained/</link><guid>https://devonauts.com/blog/dns-records-explained/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What A, AAAA, CNAME, MX, TXT, NS and CAA records do, which ones your app's domain needs, the mistakes that break sites and email, and how to check your setup.</description></item>
<item><title>How to document your app so someone else can take it over</title><link>https://devonauts.com/blog/document-your-app-for-handoff/</link><guid>https://devonauts.com/blog/document-your-app-for-handoff/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>What to write down before handing your app to a new developer or agency: accounts, setup, architecture, data, deployment, known issues and a handoff checklist.</description></item>
<item><title>Environment variables: production vs preview vs local</title><link>https://devonauts.com/blog/environment-variables-production-vs-preview/</link><guid>https://devonauts.com/blog/environment-variables-production-vs-preview/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>How production, preview and local environment variables differ on Vercel and Netlify, which values go in each, and the mistakes that leak keys or break deploys.</description></item>
<item><title>How to export your data and code from a Base44 app</title><link>https://devonauts.com/blog/export-data-from-base44-app/</link><guid>https://devonauts.com/blog/export-data-from-base44-app/</guid><pubDate>Tue, 20 Oct 2026 12:00:00 GMT</pubDate><description>Export every Base44 table as CSV, collect uploaded files and users, and get the code through GitHub sync or the CLI, with checks so nothing is lost.</description></item>
</channel>
</rss>
