{"slug": "could-not-resolve-on-deploy-but-it-works-on-my-computer", "title": "“Could not resolve” on deploy, but it works on my computer", "summary": "A developer at Axonscape's Launchpad documented a common deploy failure in which builds break with \"Could not resolve\" errors for imports whose capitalization doesn't match the actual filename, even though the app runs fine locally. Because macOS and Windows treat filenames case-insensitively while Linux build servers do not, mismatched imports—often introduced by AI coding tools—surface only at deploy time; the fix is to align every import path with the real file's capitalization, using `git mv -f` for renames. The team offers a free launch check that scans a public GitHub repo or code zip for this and other pre-launch breakages without retaining data.", "body_md": "The build fails with Could not resolve './components/navbar' while the app runs fine locally. Usually it's capital letters: Mac and Windows ignore them, the build server doesn't.\n\nThe deploy fails with `Could not resolve \"./components/navbar\" from \"src/App.tsx\"` (or `Module not found: Can't resolve`), yet `npm run dev` and `npm run build` work on your computer.\n\nThe import says `navbar` and the file is `Navbar.tsx`. macOS and Windows treat those as the same name; the Linux machines that build your app don't. AI tools write mismatched capitals easily, and nothing on your computer complains. The other cause: the file was never committed.\n\n`git mv -f old new`: a plain rename often isn't seen.\nPaste this into Lovable, Bolt, v0, Replit or Cursor:\n\nMy app builds on my computer but fails when deployed (on Linux) with \"Could not resolve\". Find every import whose path differs from the real file's name in capital letters, and make each one match the file exactly. Don't change anything else.\n\nThe full page, with the request ready to copy, is at [launchpad.axonscape.com/fix/could-not-resolve-works-locally](https://launchpad.axonscape.com/fix/could-not-resolve-works-locally). I work on Launchpad by Axonscape, which runs a [free launch check](https://launchpad.axonscape.com/check) for apps built with AI tools: it finds this and the other things that break at launch, from a public GitHub repo or a .zip of the code, and keeps nothing.", "url": "https://wpnews.pro/news/could-not-resolve-on-deploy-but-it-works-on-my-computer", "canonical_source": "https://dev.to/axonscape/could-not-resolve-on-deploy-but-it-works-on-my-computer-4je9", "published_at": "2026-10-29 09:40:53+00:00", "updated_at": "2026-10-29 09:47:01.942500+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools"], "entities": ["Axonscape", "Launchpad", "Lovable", "Bolt", "v0", "Replit", "Cursor", "GitHub"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/could-not-resolve-on-deploy-but-it-works-on-my-computer", "markdown": "https://wpnews.pro/news/could-not-resolve-on-deploy-but-it-works-on-my-computer.md", "text": "https://wpnews.pro/news/could-not-resolve-on-deploy-but-it-works-on-my-computer.txt", "jsonld": "https://wpnews.pro/news/could-not-resolve-on-deploy-but-it-works-on-my-computer.jsonld"}}