Audits and strips Lovable scaffolding from Vite + React projects — removes lovable-tagger, swaps placeholder assets, prunes unused Radix deps, and cleans generated docs so the codebase ships as yours.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
Instruções da origem · Visualização somente leitura
name
lovable-cleanup
description
Audits and strips Lovable scaffolding from Vite + React projects — removes lovable-tagger, swaps placeholder assets, prunes unused Radix deps, and cleans generated docs so the codebase ships as yours.
Remove every trace of Lovable scaffolding and ship the project as your own.
Made with antigravity-awesome-skills · author: whoisabhishekadhikari
Overview
Lovable (lovable.dev) bootstraps Vite + React + shadcn/ui projects with its own tagger
dependency, branding, placeholder assets, and generated markdown docs baked in. Most
developers export from Lovable and want a clean, ownable codebase before shipping or
open-sourcing. This skill covers all 14 areas where Lovable leaves fingerprints.
When to Use This Skill
User says "clean up my Lovable project" or "remove Lovable branding"
User says "de-Lovable", "I exported from Lovable", or "audit for Lovable leftovers"
Project contains lovable-tagger in package.json
Project contains CLEANUP_SUMMARY.md, DEPLOYMENT_GUIDE.md, or DEVELOPMENT_SUMMARY.md
index.html still has a generic <title> or Lovable favicon
User wants to audit a Vite/React project for scaffolding leftovers before shipping
Core Concepts
What Lovable injects
Lovable adds three categories of scaffolding that must be removed:
Dependency — lovable-tagger dev dep + componentTagger() call in vite.config.ts.
This is the only runtime hook; removing it is always safe.
Branding artifacts — favicon.ico/png, og-image.png, logo.png, generic <title>,
and a Lovable project URL in README.md.
Generated docs — CLEANUP_SUMMARY.md, DEPLOYMENT_GUIDE.md, DEVELOPMENT_SUMMARY.md,
LOGO_UPDATE.md in the project root.
Why the execution order matters
Removing deps before editing source files avoids lockfile conflicts. Cleaning docs last
means the README reflects the already-cleaned project.
Unused dep footprint
Lovable pre-installs the full shadcn/ui component set (~29 components) and all Radix UI
primitives (~30 packages). Most projects use 5–10. The unused ones are safe to remove but
@radix-ui/react-slot must be kept — it is an indirect dep used internally by many
shadcn components via the prop.
asChild
Recommended Execution Order
Dependencies (Areas 2 & 7) — clear the package graph first
Build config (Area 3) — remove the tagger from Vite
Remove any Lovable API keys or project IDs. If a variable is Lovable-only, delete the
entire line — don't leave an empty key.
Area 10 · Root markdown docs
Delete or repurpose these common Lovable-generated files:
CLEANUP_SUMMARY.md
DEPLOYMENT_GUIDE.md
DEVELOPMENT_SUMMARY.md
LOGO_UPDATE.md
grep -rln "lovable\|Lovable" *.md 2>/dev/null
✅ Skim each file before deleting — Lovable docs sometimes contain useful architecture
notes worth preserving in a rewritten CONTRIBUTING.md or ARCHITECTURE.md.
User: I just exported my project from Lovable. Clean it up.
Agent:
1. Runs master scan — finds 23 matches across 8 files
2. Uninstalls lovable-tagger, renames package.json "name"
3. Strips vite.config.ts of componentTagger
4. Updates index.html title, removes generator comment
5. Flags 4 markdown docs for deletion, skims each first
6. Produces cleanup report
Example 2: Targeted dep pruning only
User: Just prune the unused Radix packages from my Lovable project.
Agent:
1. Runs grep diff (Area 13 only)
2. Identifies 18 unused @radix-ui packages
3. Removes them in bulk, keeps @radix-ui/react-slot
4. Runs npm run build to verify — passes clean
Best Practices
✅ Do: Run dep removal (Areas 2 & 7) before touching source files
✅ Do: Skim Lovable-generated docs before deleting — may contain useful arch notes
✅ Do: Verify npm run build passes after every batch of changes
✅ Do: Replace OG image before launch — it directly affects social sharing previews
❌ Don't: Remove @radix-ui/react-slot — it's an indirect dep of most shadcn components
❌ Don't: Leave empty env vars like LOVABLE_PROJECT_ID= — delete the whole line
Limitations
This skill does not create or source brand assets (favicons, OG images) — it only flags
what needs replacing. The user must supply real assets.
Dep pruning (Area 13) is safe but not foolproof — some Radix packages are indirect deps
not caught by a direct grep. Always verify with npm run build.
The skill does not modify components.json aliases automatically — it only scans and
flags mismatches for the user to fix manually.
Does not cover Lovable-specific backend integrations (Supabase row-level security, edge
functions) — those require separate review.
Troubleshooting
Problem: Build fails after removing Radix packages
Symptoms: Module not found error for a @radix-ui/* package Solution: Re-add the missing package. Open src/components/ui/*.tsx and search for
the from '@radix-ui/...' import to find which component depends on it.
Problem: lovable-tagger still in lockfile after uninstall
Symptoms:grep "lovable-tagger" package-lock.json returns results Solution: Delete node_modules/ and package-lock.json, then run npm install fresh.
Problem: Generic title still showing in browser after updating index.html
Symptoms: Browser tab shows "Lovable" or "Vite App" despite edits Solution: Check for a <Helmet> or <Head> component in src/App.tsx or a layout
wrapper — React-level title tags override index.html at runtime.
Related Skills
@vite-config — Vite configuration best practices
@shadcn-setup — shadcn/ui installation and customization