{"id":48429,"library":"lovable-migrate","title":"lovable-migrate","description":"CLI migration engine for Lovable.dev projects — auto-detects stack (React, Vite, Supabase, Tailwind, shadcn/ui), generates Dockerfile (multi-stage), GitHub Actions CI/CD workflows (ci.yml + release.yml), and a comprehensive deploy plan including Supabase migrations and edge functions. v0.3.5, stable, requires Node >=20.0.0. Key differentiators: zero modification of original project, automatic Supabase detection (auth, storage, realtime, migrations, functions), wizard and demo modes. Ships TypeScript types.","status":"active","version":"0.3.5","language":"javascript","source_language":"en","source_url":"https://github.com/dynhosilva/migrator","tags":["javascript","lovable","lovable.dev","migration","deploy","supabase","docker","dockerfile","github-actions","typescript"],"install":[{"cmd":"npm install lovable-migrate","lang":"bash","label":"npm"},{"cmd":"yarn add lovable-migrate","lang":"bash","label":"yarn"},{"cmd":"pnpm add lovable-migrate","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Runtime requirement: Node >=20.0.0","package":"node","optional":false}],"imports":[{"note":"Global install is unnecessary; npx is the recommended way to run the CLI. If installed locally, use `npx lovable-migrate` or `./node_modules/.bin/lovable-migrate`.","wrong":"npm install -g lovable-migrate && lovable-migrate deploy ./path","symbol":"lovable-migrate (CLI)","correct":"npx lovable-migrate deploy ./path"},{"note":"The package exports an ESM-only API since v0.3.0. Use named imports, not CommonJS require.","wrong":"const migrate = require('lovable-migrate')","symbol":"API (programmatic usage)","correct":"import { migrate } from 'lovable-migrate'"},{"note":"Type-only imports should use `import type` to avoid runtime inclusion. Available since v0.2.5.","wrong":"import { AnalysisResult } from 'lovable-migrate'","symbol":"Types (TypeScript)","correct":"import type { AnalysisResult } from 'lovable-migrate'"}],"quickstart":{"code":"npx lovable-migrate deploy ./my-project --output ./output","lang":"typescript","description":"Runs the full migration pipeline: analysis, plan generation, Dockerfile, GitHub Actions, and deploy instructions."},"warnings":[{"fix":"Upgrade Node.js to v20 or later (e.g., via nvm: `nvm install 20`).","message":"Node.js >=20 is required; versions below 20 are unsupported.","severity":"breaking","affected_versions":">=0.0.0"},{"fix":"Remove the --stack flag; let the CLI auto-detect your stack.","message":"Using `lovable-migrate` without a stack preset (e.g., --stack react) is deprecated; auto-detection is now the default and the --stack flag will be removed in v1.0.","severity":"deprecated","affected_versions":">=0.3.0"},{"fix":"Always specify a fresh output directory, or ensure you have backed up any existing content.","message":"The CLI modifies files inside `--output` directory; it never touches the original project, but if the output directory already contains files, they may be overwritten without warning.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Ensure your project includes a .env file with the required variables, or run `lovable-migrate ui` for interactive setup.","message":"Supabase detection depends on environment variables (VITE_SUPABASE_URL, VITE_SUPABASE_ANON_KEY) and config files (supabase/config.toml). Missing env vars may cause incomplete output.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Edit the generated `ci.yml` and `release.yml` to replace `npm` with `yarn` or `pnpm` as needed.","message":"The generated GitHub Actions workflows use `npm` as package manager by default. Projects using yarn or pnpm may require manual adjustments.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'20.0.0':45 'action':25,78 'auth':56 'auto':11 'auto-detect':10 'automat':53 'ci.yml':28 'ci/cd':26 'cli':4 'comprehens':32 'demo':63 'deploy':33,72 'detect':12,55 'differenti':47 'docker':74 'dockerfil':20,75 'edg':39 'engin':6 'function':40,60 'generat':19 'github':24,77 'github-act':76 'includ':35 'javascript':68 'key':46 'lovabl':2,69 'lovable-migr':1 'lovable.dev':8,70 'migrat':3,5,37,59,71 'mode':64 'modif':49 'multi':22 'multi-stag':21 'node':44 'origin':51 'plan':34 'project':9,52 'react':14 'realtim':58 'release.yml':29 'requir':43 'shadcn/ui':18 'ship':65 'stabl':42 'stack':13 'stage':23 'storag':57 'supabas':16,36,54,73 'tailwind':17 'type':67 'typescript':66,79 'v0.3.5':41 'vite':15 'wizard':61 'workflow':27 'zero':48","created_at":"2026-06-07T16:56:36.329542+00:00","updated_at":"2026-06-07T16:56:36.329542+00:00","problems":[{"fix":"Use `npx lovable-migrate ...` instead of `lovable-migrate ...` without npx.","cause":"Running the CLI without npx or local install, or using a global install that isn't on PATH.","error":"Error: Cannot find module 'lovable-migrate'"},{"fix":"Run `npx lovable-migrate ...` or install locally with `npm install --save-dev lovable-migrate` and use `./node_modules/.bin/lovable-migrate`.","cause":"Trying to run the globally installed binary without npx, but global install is not recommended.","error":"lovable-migrate: command not found"},{"fix":"Use `import { migrate } from 'lovable-migrate'` instead of `import lovableMigrate from 'lovable-migrate'`.","cause":"Using default import instead of named import when using programmatic API.","error":"TypeError: migrate is not a function"},{"fix":"Ensure the input project path exists and is a valid Lovable.dev project directory.","cause":"Passing a path to a non-existent or empty directory, or trying to read a directory as a file.","error":"Error: EISDIR: illegal operation on a directory, read"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/dynhosilva/migrator#readme","github":"https://github.com/dynhosilva/migrator","docs":null,"changelog":null,"pypi":null,"npm":"lovable-migrate","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}