[{"data":1,"prerenderedAt":147},["ShallowReactive",2],{"term-n\u002Fnode-modules":3,"related-n\u002Fnode-modules":134},{"id":4,"title":5,"acronym":6,"body":7,"category":116,"description":117,"difficulty":118,"extension":119,"letter":120,"meta":121,"navigation":69,"path":122,"related":123,"seo":128,"sitemap":129,"stem":132,"subcategory":6,"__hash__":133},"terms\u002Fterms\u002Fn\u002Fnode-modules.md","node_modules",null,{"type":8,"value":9,"toc":110},"minimark",[10,15,19,23,35,39,99,103,106],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"node_modules is the folder where npm dumps all the packages you install. It can grow to hundreds of megabytes instantly and contains thousands of files. It is the source of endless memes. Never commit it to git — that's what lock files are for.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25,26,30,31,34],{},"node_modules is the directory in a Node.js project where all installed npm packages and their transitive dependencies reside. It is generated by running ",[27,28,29],"code",{},"npm install"," and should always be listed in ",[27,32,33],{},".gitignore",". It can contain thousands of nested packages.",[11,36,38],{"id":37},"show-me-the-code","Show Me The Code",[40,41,46],"pre",{"className":42,"code":43,"language":44,"meta":45,"style":45},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# .gitignore\nnode_modules\u002F\n\n# Reinstall from lock file\nrm -rf node_modules\nnpm ci\n","bash","",[27,47,48,57,64,71,77,90],{"__ignoreMap":45},[49,50,53],"span",{"class":51,"line":52},"line",1,[49,54,56],{"class":55},"sHwdD","# .gitignore\n",[49,58,60],{"class":51,"line":59},2,[49,61,63],{"class":62},"sBMFI","node_modules\u002F\n",[49,65,67],{"class":51,"line":66},3,[49,68,70],{"emptyLinePlaceholder":69},true,"\n",[49,72,74],{"class":51,"line":73},4,[49,75,76],{"class":55},"# Reinstall from lock file\n",[49,78,80,83,87],{"class":51,"line":79},5,[49,81,82],{"class":62},"rm",[49,84,86],{"class":85},"sfazB"," -rf",[49,88,89],{"class":85}," node_modules\n",[49,91,93,96],{"class":51,"line":92},6,[49,94,95],{"class":62},"npm",[49,97,98],{"class":85}," ci\n",[11,100,102],{"id":101},"when-youll-hear-this","When You'll Hear This",[16,104,105],{},"\"Delete node_modules and reinstall from scratch.\" \u002F \"Never commit node_modules — use the lock file instead.\"",[107,108,109],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":45,"searchDepth":59,"depth":59,"links":111},[112,113,114,115],{"id":13,"depth":59,"text":14},{"id":21,"depth":59,"text":22},{"id":37,"depth":59,"text":38},{"id":101,"depth":59,"text":102},"general","node_modules is the folder where npm dumps all the packages you install. It can grow to hundreds of megabytes instantly and contains thousands of files.","beginner","md","n",{},"\u002Fterms\u002Fn\u002Fnode-modules",[124,125,126,127],"Package","Dependency","Lock File","Virtual Environment",{"title":5,"description":117},{"changefreq":130,"priority":131},"weekly",0.7,"terms\u002Fn\u002Fnode-modules","zzW83w9GuWBmcVEiel88evgLlMfWHEg0oea4ja8hg30",[135,138,141,144],{"title":125,"path":136,"acronym":6,"category":116,"difficulty":118,"description":137},"\u002Fterms\u002Fd\u002Fdependency","A dependency is a package your project relies on to work. Your app depends on React to render UI, axios to make requests, and dotenv to read config.",{"title":126,"path":139,"acronym":6,"category":116,"difficulty":118,"description":140},"\u002Fterms\u002Fl\u002Flock-file","A lock file is a snapshot of the exact versions of every package your project is using right now.",{"title":124,"path":142,"acronym":6,"category":116,"difficulty":118,"description":143},"\u002Fterms\u002Fp\u002Fpackage","A package is a bundle of code someone else wrote and published so you don't have to reinvent the wheel. Need to parse dates? There's a package for that.",{"title":127,"path":145,"acronym":6,"category":116,"difficulty":118,"description":146},"\u002Fterms\u002Fv\u002Fvirtual-environment","A virtual environment is an isolated bubble for your Python project's packages.",1776518298231]