AskCleanAskClean

node_modules op je Mac verwijderen zonder je project kwijt te raken

AskClean-team · Bijgewerkt 2026-08-05

Je kunt node_modules verwijderen als package.json, de juiste lockfile en alle vereiste pakketbronnen beschikbaar blijven. Meet eerst de node_modules-map van elk project, stop actieve processen en verplaats alleen de gecontroleerde map met afhankelijkheden naar de Prullenmand. Installeer daarna opnieuw met dezelfde pakketbeheerder en leeg de Prullenmand pas als de build, tests en app weer werken.

Robotarm tilt één blok uit een netwerk van afhankelijkheidsblokken naar een bak met recyclingsymbool, terwijl een bouwtekening, hangslot en turquoise blok onder een beschermkap blijven liggen
Verwijder alleen de map met opnieuw te installeren afhankelijkheden; laat manifest, lockfile, configuratie en broncode staan.

Maak onderscheid tussen node_modules en de rest van je project

node_modules bevat de geïnstalleerde afhankelijkheden van één project en is onder de juiste voorwaarden opnieuw op te bouwen. Na verwijdering kan het project niet draaien of bouwen tot de installatie klaar is. package.json, lockfiles, broncode, configuratie, patches, workspacebestanden en Git-geschiedenis zijn de bouwinstructies en mogen niet weg. De gedeelde npm-downloadcache onder ~/.npm is een aparte opslagcategorie.

Controleer of je de afhankelijkheden echt opnieuw kunt installeren

Een lockfile maakt een herinstallatie voorspelbaarder, maar is geen back-up van pakketten. Controleer de door het project gebruikte pakketbeheerder en versie, toegang tot privépakketregisters, VPN, Git- en file:-afhankelijkheden, lokale workspaces, externe downloads en native toolchains. npm v12 leest npm-shrinkwrap.json niet meer. Staat alleen dat bestand in de projectroot en bestaat package-lock.json nog niet, hernoem het dan naar package-lock.json; beide bestanden hebben dezelfde indeling. Overschrijf nooit een bestaande package-lock.json. Wijzigingen die alleen in node_modules staan, verdwijnen bij verwijdering.

  1. Voer in de projectroot pwd en du -sh ./node_modules uit en noteer ook de vrije macOS-opslag.
  2. Controleer package.json, de juiste lockfile, het packageManager-veld, workspaceconfiguratie en git status, en maak een back-up van lokale bron- en configuratiewijzigingen. Hernoem npm-shrinkwrap.json voor npm v12 alleen als dit de enige lockfile is en package-lock.json nog niet bestaat.
  3. Bevestig toegang tot privépakketregisters, Git- en file:-afhankelijkheden, lokale pakketten, externe downloads en buildtools, en stop alle processen die node_modules gebruiken.
  4. Verplaats alleen de gecontroleerde node_modules-map naar de Prullenmand en installeer vanaf de juiste repositoryroot opnieuw met de vastgelegde pakketbeheerder en de lockfile.
  5. Voer de build, tests, lintcontrole en de startprocedure van de app uit, meet de opslag opnieuw en leeg pas daarna de Prullenmand.

Gebruik node_modules nooit als enige kopie van een pakket of handmatige aanpassing. Als de exacte afhankelijkheid niet meer beschikbaar en nergens gearchiveerd is, kan verwijderen een oud project onbruikbaar maken.

Verwijder precies één gecontroleerde map met afhankelijkheden

Verplaats in het gecontroleerde project alleen node_modules naar de Prullenmand in Finder, nooit de bovenliggende projectmap. rm -rf ./node_modules omzeilt de Prullenmand en is onomkeerbaar; controleer daarom eerst de projectroot opnieuw met pwd. Gebruik daar npm ci als package-lock.json leidend is, of de frozen-lockfile-werkwijze van het project voor pnpm, Yarn of Bun. Behandel een monorepo vanuit de repositoryroot met de bijbehorende lockfile als één afhankelijkheidssysteem.

Herinstalleer en controleer het hele project

Een geslaagde installatie bewijst nog niet dat het project is hersteld. Voer de gedocumenteerde build, tests, lintcontrole en startprocedure uit; native add-ons en lifecycle-scripts kunnen na een toolchainwijziging alsnog mislukken. Herstel kost downloads, uitpakken, links aanmaken en soms compileren. Zet bij een fout de map terug uit de Prullenmand en onderzoek toegangsrechten, netwerk, versies en lockfile voordat je nog een project opruimt.

Grenzen voor verwijderen en herstelkosten

Vind grote node_modules-mappen, bescherm broncode en lockfiles, verwijder afhankelijkheden per project en installeer ze veilig opnieuw met npm, pnpm, Yarn of Bun.

Onderdeel of actieControleren metGevolg
Maak onderscheid tussen node_modules en de rest van je project<project>/node_modulesnode_modules bevat de geïnstalleerde afhankelijkheden van één project en is onder de juiste voorwaarden opnieuw op te bouwen. Na verwijdering kan het project niet draaien of bouwen tot de installatie klaar is. package.json, lockfiles, broncode, configuratie, patches, workspacebestanden en Git-geschiedenis zijn de bouwinstructies en mogen niet weg. De gedeelde npm-downloadcache onder ~/.npm is een aparte opslagcategorie.
Controleer of je de afhankelijkheden echt opnieuw kunt installerenpackage.json + lockfile + workspaceconfiguratieEen lockfile maakt een herinstallatie voorspelbaarder, maar is geen back-up van pakketten. Controleer de door het project gebruikte pakketbeheerder en versie, toegang tot privépakketregisters, VPN, Git- en file:-afhankelijkheden, lokale workspaces, externe downloads en native toolchains. npm v12 leest npm-shrinkwrap.json niet meer. Staat alleen dat bestand in de projectroot en bestaat package-lock.json nog niet, hernoem het dan naar package-lock.json; beide bestanden hebben dezelfde indeling. Overschrijf nooit een bestaande package-lock.json. Wijzigingen die alleen in node_modules staan, verdwijnen bij verwijdering.
Verwijder precies één gecontroleerde map met afhankelijkhedenPrullenmand / herinstallatie met pakketbeheerderVerplaats in het gecontroleerde project alleen node_modules naar de Prullenmand in Finder, nooit de bovenliggende projectmap. rm -rf ./node_modules omzeilt de Prullenmand en is onomkeerbaar; controleer daarom eerst de projectroot opnieuw met pwd. Gebruik daar npm ci als package-lock.json leidend is, of de frozen-lockfile-werkwijze van het project voor pnpm, Yarn of Bun. Behandel een monorepo vanuit de repositoryroot met de bijbehorende lockfile als één afhankelijkheidssysteem.
Herinstalleer en controleer het hele projectbuild + tests + app startenEen geslaagde installatie bewijst nog niet dat het project is hersteld. Voer de gedocumenteerde build, tests, lintcontrole en startprocedure uit; native add-ons en lifecycle-scripts kunnen na een toolchainwijziging alsnog mislukken. Herstel kost downloads, uitpakken, links aanmaken en soms compileren. Zet bij een fout de map terug uit de Prullenmand en onderzoek toegangsrechten, netwerk, versies en lockfile voordat je nog een project opruimt.

FAQ

Is het veilig om node_modules op een Mac te verwijderen?

Meestal wel, als package.json, de juiste lockfile, workspacebestanden, broncode en alle pakketbronnen behouden zijn. Het project werkt pas weer nadat de herinstallatie en controles zijn geslaagd.

Moet ik package-lock.json samen met node_modules verwijderen?

Nee. package-lock.json is invoer voor een reproduceerbare npm-installatie. npm v12 leest npm-shrinkwrap.json niet meer. Hernoem zo’n bestand alleen als het de enige lockfile is en package-lock.json nog niet bestaat; overschrijf nooit een bestaande lockfile.

Zijn node_modules en de npm-cache hetzelfde?

Nee. node_modules is de boom van geïnstalleerde afhankelijkheden van één project. De gedeelde npm-cache staat standaard onder ~/.npm. De ene categorie verwijderen wist de andere niet.

Bronnen

Meer ontwikkelaarsopslag vrijmaken