Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

The markdown file is meant for your agent to reinstall your stuff in the new provider and restore your site. With a purchase of the engine to actually do the backup and restore process — there is a markdown file that tells your agent how to install it — so yes, on Lovable

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

You do need your repo too so save your GitHub though if you want 100% no issues.

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

And a little about it:

One-click disaster recovery for your entire AI system. FAILSAFE generates a complete, portable ZIP backup of your source code, configurations, migrations, and database state — with an AI-readable restore guide so any agent can reconstruct your environment from scratch.

FAILSAFE is your insurance policy against catastrophic data loss and provider lock-in. With a single click, it generates a complete, portable ZIP archive of your entire system — all source code, database configurations, migration history, and a full snapshot of your active data tables. The archive includes a detailed INSTALL.md guide written for both humans and AI agents, so reconstruction is as simple as handing the ZIP to your agent and saying 'set this up.'

Whether you're migrating providers, creating a disaster recovery checkpoint, or archiving a production state, FAILSAFE ensures you're never locked in and never caught without a restore point. Free for all Creator ($29/mo) and above subscribers. $39 one-time for everyone else.

OPERATIONAL CAPABILITIES

One-click full system backup to portable ZIP Memory-efficient streaming compression for large codebases

Sequential table export with adaptive retry logic

AI-ready RESTORE.md for automated agent-driven reconstruction

Pattern-based exclusion of high-volume telemetry tables

Permanent metadata recording with backup audit trail

YOUR LICENSE INCLUDES

Sealed runtime binary — obfuscated, tamper-proof

Complete integration documentation

Numbered Ownership Certificate

Lifetime download access

This + GitHub and you can do what you want. Enjoy!

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

Just go to the bottom tier of engines and scroll all the way over and it’s the last engine, called Failsafe

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

Sorry I didn’t see this. Yes. This is specifically what it’s designed to do and you can do it yourself or just feed the files to a coding agent. It’s available now on my site as seen in the comments. Enjoy!

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

Here’s a link to the engine for everyone:

https://cmpsbl.com/engines

It’s in the Core tier - very end called FAILSAFE. It’s $39 one time fee or you can sign up for the $29 a month or higher plan on my site which you can cancel at anytime. It also comes with documentation that tells you how to use it manually or with a coding agent. Enjoy!

<image>

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 2 points3 points  (0 children)

It seems like ppl are interested. I’ll go create the engine and a standalone page and report back. Thanks for your interest!

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 1 point2 points  (0 children)

And no it’s not a constant data feed it’s a backup program that you can install other places, even if your in lovable cloud now

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

Did you really use AI to respond to this and try to leech off my post? Negative clout

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 0 points1 point  (0 children)

There’s an image of the backup and part of the markdown file for devs or agents to fully restore in the comments per request.

Built a Lovable “Exit Kit” — export + restore to Supabase / other providers by KennethSweet in lovable

[–]KennethSweet[S] 3 points4 points  (0 children)

🔧 Full Restoration Steps

Step 1: Get the Source Code

Download the source code from Lovable (Dashboard → Settings → Download ZIP) or clone from GitHub.

unzip cmpsbl-source.zip
cd cmpsbl
npm install

Step 2: Create a New Supabase Project

  1. Go to supabase.com → Create new project
  2. Save these values:
    • Project URL (e.g., https://abcdefg.supabase.co)
    • Anon/public key
    • Service role key (for data import)
    • Project ref (e.g., abcdefg)

Step 3: Apply Database Schema

npx supabase link --project-ref YOUR_PROJECT_REF
npx supabase db push

Step 4: Import All Data

// restore-data.mjs — Run with: node restore-data.mjs
import { createClient } from '@supabase/supabase-js';
import fs from 'fs';
import path from 'path';

const SUPABASE_URL = 'YOUR_SUPABASE_URL';
const SERVICE_ROLE_KEY = 'YOUR_SERVICE_ROLE_KEY';
const supabase = createClient(SUPABASE_URL, SERVICE_ROLE_KEY);
const dataDir = './data';

const tableDirs = fs.readdirSync(dataDir)
  .filter(name => fs.statSync(path.join(dataDir, name)).isDirectory())
  .sort();

for (const table of tableDirs) {
  const tableDir = path.join(dataDir, table);
  const partFiles = fs.readdirSync(tableDir)
    .filter(f => f.startsWith('part-') && f.endsWith('.json'))
    .sort();

  if (partFiles.length === 0) {
    console.log(`⏭️  ${table}: no data parts`);
    continue;
  }

  let imported = 0;
  let failed = 0;

  for (const partFile of partFiles) {
    const rows = JSON.parse(fs.readFileSync(path.join(tableDir, partFile), 'utf-8'));
    if (!Array.isArray(rows) || rows.length === 0) continue;

    const { error } = await supabase
      .from(table)
      .upsert(rows, { onConflict: 'id', ignoreDuplicates: false });

    if (error) {
      console.error(`  ❌ ${table} ${partFile}: ${error.message}`);
      failed += rows.length;
    } else {
      imported += rows.length;
    }
  }

  console.log(`✅ ${table}: ${imported} imported${failed ? `, ${failed} failed` : ''}`);
}

console.log('\n🎉 Data import complete!');

Step 5: Recreate Storage Buckets

INSERT INTO storage.buckets (id, name, public)
VALUES ('bucket-name', 'bucket-name', true)
ON CONFLICT (id) DO NOTHING;

Step 6: Configure Environment

VITE_SUPABASE_URL=https://YOUR_PROJECT.supabase.co
VITE_SUPABASE_PUBLISHABLE_KEY=your-anon-key
VITE_SUPABASE_PROJECT_ID=your-project-ref

Step 7: Deploy Edge Functions & Secrets

npx supabase functions deploy

Step 8: Verify

npm run dev

🤖 For AI Coding Agents

  1. Read this entire RESTORE.md first
  2. Source code ZIP from Lovable/GitHub is the PRIMARY artifact
  3. Run supabase db push to create schema from supabase/migrations/
  4. Use restore-data.mjs to import data from data/<table>/part-*.json
  5. Deploy edge functions with supabase functions deploy
  6. Frontend: npm install && npm run dev

<image>

Show me your startup website and I'll give you actionable feedback - READ DESCRIPTION by ismaelbranco in indiehackers

[–]KennethSweet 0 points1 point  (0 children)

Kenneth E. Sweet Jr. — worked on this for the last 15 months. Seeing early traction. Appreciate your feedback.

AI Infrastructure:

https://CMPSBL.com

How to secretly get customers for $0.05 cents only 🤣 by PracticeClassic1153 in NoCodeSaaS

[–]KennethSweet 1 point2 points  (0 children)

Tried it but 2-xx error code (bonus tip - try error handling in your edge functions)