[{"data":1,"prerenderedAt":800},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-installation":72,"-getting-started-installation-surround":795},[4,30,51],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"/getting-started","1.getting-started",[10,15,20,25],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","/getting-started/introduction","1.getting-started/2.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","/getting-started/installation","1.getting-started/3.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Configuration","/getting-started/configuration","1.getting-started/4.configuration","i-lucide-settings",{"title":26,"path":27,"stem":28,"icon":29},"Supported Formats","/getting-started/supported-formats","1.getting-started/5.supported-formats","i-lucide-file-code",{"title":31,"path":32,"stem":33,"children":34,"icon":36},"Reporters","/reporters","2.reporters/1.index",[35,37,41,46],{"title":31,"path":32,"stem":33,"icon":36},"i-lucide-file-chart-column",{"title":38,"path":39,"stem":40,"icon":29},"HTML Reporter","/reporters/html","2.reporters/2.html",{"title":42,"path":43,"stem":44,"icon":45},"JSON Reporter","/reporters/json","2.reporters/3.json","i-lucide-braces",{"title":47,"path":48,"stem":49,"icon":50},"Badge Reporter","/reporters/badge","2.reporters/4.badge","i-lucide-award",{"title":52,"path":53,"stem":54,"children":55,"icon":57},"API","/api","3.api/1.index",[56,58,63,68],{"title":52,"path":53,"stem":54,"icon":57},"i-lucide-code",{"title":59,"path":60,"stem":61,"icon":62},"Core Package","/api/core","3.api/2.core","i-lucide-box",{"title":64,"path":65,"stem":66,"icon":67},"Server API","/api/server","3.api/3.server","i-lucide-server",{"title":69,"path":70,"stem":71,"icon":62},"MCP Server","/api/mcp-server","3.api/4.mcp-server",{"id":73,"title":16,"body":74,"description":787,"extension":788,"links":789,"meta":790,"navigation":791,"path":17,"seo":792,"stem":18,"__hash__":794},"docs/1.getting-started/3.installation.md",{"type":75,"value":76,"toc":771},"minimark",[77,82,87,91,121,125,128,144,148,166,170,186,190,266,269,276,399,403,406,512,515,673,677,680,701,704,767],[78,79,81],"h2",{"id":80},"quick-installation","Quick Installation",[83,84,86],"h3",{"id":85},"using-npm","Using npm",[88,89,90],"p",{},"Install jscpd globally:",[92,93,99],"pre",{"className":94,"code":95,"filename":96,"language":97,"meta":98,"style":98},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install -g jscpd\n","Terminal","bash","",[100,101,102],"code",{"__ignoreMap":98},[103,104,107,111,115,118],"span",{"class":105,"line":106},"line",1,[103,108,110],{"class":109},"sBMFI","npm",[103,112,114],{"class":113},"sfazB"," install",[103,116,117],{"class":113}," -g",[103,119,120],{"class":113}," jscpd\n",[83,122,124],{"id":123},"using-npx-no-installation","Using npx (No Installation)",[88,126,127],{},"Run jscpd directly without installing:",[92,129,131],{"className":94,"code":130,"filename":96,"language":97,"meta":98,"style":98},"npx jscpd /path/to/source\n",[100,132,133],{"__ignoreMap":98},[103,134,135,138,141],{"class":105,"line":106},[103,136,137],{"class":109},"npx",[103,139,140],{"class":113}," jscpd",[103,142,143],{"class":113}," /path/to/source\n",[83,145,147],{"id":146},"using-yarn","Using yarn",[92,149,151],{"className":94,"code":150,"filename":96,"language":97,"meta":98,"style":98},"yarn global add jscpd\n",[100,152,153],{"__ignoreMap":98},[103,154,155,158,161,164],{"class":105,"line":106},[103,156,157],{"class":109},"yarn",[103,159,160],{"class":113}," global",[103,162,163],{"class":113}," add",[103,165,120],{"class":113},[83,167,169],{"id":168},"using-pnpm","Using pnpm",[92,171,173],{"className":94,"code":172,"filename":96,"language":97,"meta":98,"style":98},"pnpm add -g jscpd\n",[100,174,175],{"__ignoreMap":98},[103,176,177,180,182,184],{"class":105,"line":106},[103,178,179],{"class":109},"pnpm",[103,181,163],{"class":113},[103,183,117],{"class":113},[103,185,120],{"class":113},[78,187,189],{"id":188},"basic-usage","Basic Usage",[191,192,193,197,200,212,216,219,241,245,248],"steps",{},[83,194,196],{"id":195},"scan-a-directory","Scan a directory",[88,198,199],{},"Run jscpd on your source code directory:",[92,201,203],{"className":94,"code":202,"filename":96,"language":97,"meta":98,"style":98},"jscpd /path/to/source\n",[100,204,205],{"__ignoreMap":98},[103,206,207,210],{"class":105,"line":106},[103,208,209],{"class":109},"jscpd",[103,211,143],{"class":113},[83,213,215],{"id":214},"use-pattern-matching","Use pattern matching",[88,217,218],{},"Scan specific file patterns:",[92,220,222],{"className":94,"code":221,"filename":96,"language":97,"meta":98,"style":98},"jscpd --pattern \"src/**/*.js\"\n",[100,223,224],{"__ignoreMap":98},[103,225,226,228,231,235,238],{"class":105,"line":106},[103,227,209],{"class":109},[103,229,230],{"class":113}," --pattern",[103,232,234],{"class":233},"sMK4o"," \"",[103,236,237],{"class":113},"src/**/*.js",[103,239,240],{"class":233},"\"\n",[83,242,244],{"id":243},"generate-html-report","Generate HTML report",[88,246,247],{},"Create an HTML report of duplications:",[92,249,251],{"className":94,"code":250,"filename":96,"language":97,"meta":98,"style":98},"jscpd /path/to/source --reporters html\n",[100,252,253],{"__ignoreMap":98},[103,254,255,257,260,263],{"class":105,"line":106},[103,256,209],{"class":109},[103,258,259],{"class":113}," /path/to/source",[103,261,262],{"class":113}," --reporters",[103,264,265],{"class":113}," html\n",[78,267,21],{"id":268},"configuration",[88,270,271,272,275],{},"Create a ",[100,273,274],{},".jscpd.json"," file in your project root:",[92,277,281],{"className":278,"code":279,"filename":274,"language":280,"meta":98,"style":98},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"threshold\": 0,\n  \"reporters\": [\"html\", \"console\"],\n  \"ignore\": [\"**/__snapshots__/**\", \"**/node_modules/**\"],\n  \"absolute\": true\n}\n","json",[100,282,283,288,311,346,378,393],{"__ignoreMap":98},[103,284,285],{"class":105,"line":106},[103,286,287],{"class":233},"{\n",[103,289,291,294,298,301,304,308],{"class":105,"line":290},2,[103,292,293],{"class":233},"  \"",[103,295,297],{"class":296},"spNyl","threshold",[103,299,300],{"class":233},"\"",[103,302,303],{"class":233},":",[103,305,307],{"class":306},"sbssI"," 0",[103,309,310],{"class":233},",\n",[103,312,314,316,319,321,323,326,328,331,333,336,338,341,343],{"class":105,"line":313},3,[103,315,293],{"class":233},[103,317,318],{"class":296},"reporters",[103,320,300],{"class":233},[103,322,303],{"class":233},[103,324,325],{"class":233}," [",[103,327,300],{"class":233},[103,329,330],{"class":113},"html",[103,332,300],{"class":233},[103,334,335],{"class":233},",",[103,337,234],{"class":233},[103,339,340],{"class":113},"console",[103,342,300],{"class":233},[103,344,345],{"class":233},"],\n",[103,347,349,351,354,356,358,360,362,365,367,369,371,374,376],{"class":105,"line":348},4,[103,350,293],{"class":233},[103,352,353],{"class":296},"ignore",[103,355,300],{"class":233},[103,357,303],{"class":233},[103,359,325],{"class":233},[103,361,300],{"class":233},[103,363,364],{"class":113},"**/__snapshots__/**",[103,366,300],{"class":233},[103,368,335],{"class":233},[103,370,234],{"class":233},[103,372,373],{"class":113},"**/node_modules/**",[103,375,300],{"class":233},[103,377,345],{"class":233},[103,379,381,383,386,388,390],{"class":105,"line":380},5,[103,382,293],{"class":233},[103,384,385],{"class":296},"absolute",[103,387,300],{"class":233},[103,389,303],{"class":233},[103,391,392],{"class":233}," true\n",[103,394,396],{"class":105,"line":395},6,[103,397,398],{"class":233},"}\n",[78,400,402],{"id":401},"programming-api","Programming API",[88,404,405],{},"For integration into your application:",[92,407,411],{"className":408,"code":409,"language":410,"meta":98,"style":98},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { IClone } from '@jscpd/core';\nimport { jscpd } from 'jscpd';\n\nconst clones: Promise\u003CIClone[]> = jscpd(process.argv);\n","typescript",[100,412,413,444,464,470],{"__ignoreMap":98},[103,414,415,419,422,426,429,432,435,438,441],{"class":105,"line":106},[103,416,418],{"class":417},"s7zQu","import",[103,420,421],{"class":233}," {",[103,423,425],{"class":424},"sTEyZ"," IClone",[103,427,428],{"class":233}," }",[103,430,431],{"class":417}," from",[103,433,434],{"class":233}," '",[103,436,437],{"class":113},"@jscpd/core",[103,439,440],{"class":233},"'",[103,442,443],{"class":233},";\n",[103,445,446,448,450,452,454,456,458,460,462],{"class":105,"line":290},[103,447,418],{"class":417},[103,449,421],{"class":233},[103,451,140],{"class":424},[103,453,428],{"class":233},[103,455,431],{"class":417},[103,457,434],{"class":233},[103,459,209],{"class":113},[103,461,440],{"class":233},[103,463,443],{"class":233},[103,465,466],{"class":105,"line":313},[103,467,469],{"emptyLinePlaceholder":468},true,"\n",[103,471,472,475,478,480,483,486,489,492,495,498,501,504,507,510],{"class":105,"line":348},[103,473,474],{"class":296},"const",[103,476,477],{"class":424}," clones",[103,479,303],{"class":233},[103,481,482],{"class":109}," Promise",[103,484,485],{"class":233},"\u003C",[103,487,488],{"class":109},"IClone",[103,490,491],{"class":424},"[]",[103,493,494],{"class":233},">",[103,496,497],{"class":233}," =",[103,499,140],{"class":500},"s2Zo4",[103,502,503],{"class":424},"(process",[103,505,506],{"class":233},".",[103,508,509],{"class":424},"argv)",[103,511,443],{"class":233},[88,513,514],{},"Or with async/await:",[92,516,518],{"className":408,"code":517,"language":410,"meta":98,"style":98},"import { IClone } from '@jscpd/core';\nimport { jscpd } from 'jscpd';\n\n(async () => {\n  const clones: IClone[] = await jscpd(['', '', __dirname, '-r', 'json']);\n  console.log(clones);\n})();\n",[100,519,520,540,560,564,581,642,662],{"__ignoreMap":98},[103,521,522,524,526,528,530,532,534,536,538],{"class":105,"line":106},[103,523,418],{"class":417},[103,525,421],{"class":233},[103,527,425],{"class":424},[103,529,428],{"class":233},[103,531,431],{"class":417},[103,533,434],{"class":233},[103,535,437],{"class":113},[103,537,440],{"class":233},[103,539,443],{"class":233},[103,541,542,544,546,548,550,552,554,556,558],{"class":105,"line":290},[103,543,418],{"class":417},[103,545,421],{"class":233},[103,547,140],{"class":424},[103,549,428],{"class":233},[103,551,431],{"class":417},[103,553,434],{"class":233},[103,555,209],{"class":113},[103,557,440],{"class":233},[103,559,443],{"class":233},[103,561,562],{"class":105,"line":313},[103,563,469],{"emptyLinePlaceholder":468},[103,565,566,569,572,575,578],{"class":105,"line":348},[103,567,568],{"class":424},"(",[103,570,571],{"class":296},"async",[103,573,574],{"class":233}," ()",[103,576,577],{"class":296}," =>",[103,579,580],{"class":233}," {\n",[103,582,583,586,588,590,592,596,599,602,604,607,610,612,615,617,620,622,624,627,629,631,633,635,637,640],{"class":105,"line":380},[103,584,585],{"class":296},"  const",[103,587,477],{"class":424},[103,589,303],{"class":233},[103,591,425],{"class":109},[103,593,595],{"class":594},"swJcz","[] ",[103,597,598],{"class":233},"=",[103,600,601],{"class":417}," await",[103,603,140],{"class":500},[103,605,606],{"class":594},"([",[103,608,609],{"class":233},"''",[103,611,335],{"class":233},[103,613,614],{"class":233}," ''",[103,616,335],{"class":233},[103,618,619],{"class":424}," __dirname",[103,621,335],{"class":233},[103,623,434],{"class":233},[103,625,626],{"class":113},"-r",[103,628,440],{"class":233},[103,630,335],{"class":233},[103,632,434],{"class":233},[103,634,280],{"class":113},[103,636,440],{"class":233},[103,638,639],{"class":594},"])",[103,641,443],{"class":233},[103,643,644,647,649,652,654,657,660],{"class":105,"line":395},[103,645,646],{"class":424},"  console",[103,648,506],{"class":233},[103,650,651],{"class":500},"log",[103,653,568],{"class":594},[103,655,656],{"class":424},"clones",[103,658,659],{"class":594},")",[103,661,443],{"class":233},[103,663,665,668,671],{"class":105,"line":664},7,[103,666,667],{"class":233},"}",[103,669,670],{"class":424},")()",[103,672,443],{"class":233},[78,674,676],{"id":675},"jscpd-server","JSCPD Server",[88,678,679],{},"Install and run the standalone server:",[92,681,683],{"className":94,"code":682,"filename":96,"language":97,"meta":98,"style":98},"npm install -g jscpd-server\njscpd-server\n",[100,684,685,696],{"__ignoreMap":98},[103,686,687,689,691,693],{"class":105,"line":106},[103,688,110],{"class":109},[103,690,114],{"class":113},[103,692,117],{"class":113},[103,694,695],{"class":113}," jscpd-server\n",[103,697,698],{"class":105,"line":290},[103,699,700],{"class":109},"jscpd-server\n",[88,702,703],{},"Then check code for duplication:",[92,705,707],{"className":94,"code":706,"filename":96,"language":97,"meta":98,"style":98},"curl -X POST http://localhost:3000/api/check \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"code\": \"console.log(\\\"hello\\\");\\nconsole.log(\\\"world\\\");\",\n    \"format\": \"javascript\"\n  }'\n",[100,708,709,726,740,749,754,759],{"__ignoreMap":98},[103,710,711,714,717,720,723],{"class":105,"line":106},[103,712,713],{"class":109},"curl",[103,715,716],{"class":113}," -X",[103,718,719],{"class":113}," POST",[103,721,722],{"class":113}," http://localhost:3000/api/check",[103,724,725],{"class":424}," \\\n",[103,727,728,731,733,736,738],{"class":105,"line":290},[103,729,730],{"class":113},"  -H",[103,732,234],{"class":233},[103,734,735],{"class":113},"Content-Type: application/json",[103,737,300],{"class":233},[103,739,725],{"class":424},[103,741,742,745,747],{"class":105,"line":313},[103,743,744],{"class":113},"  -d",[103,746,434],{"class":233},[103,748,287],{"class":113},[103,750,751],{"class":105,"line":348},[103,752,753],{"class":113},"    \"code\": \"console.log(\\\"hello\\\");\\nconsole.log(\\\"world\\\");\",\n",[103,755,756],{"class":105,"line":380},[103,757,758],{"class":113},"    \"format\": \"javascript\"\n",[103,760,761,764],{"class":105,"line":395},[103,762,763],{"class":113},"  }",[103,765,766],{"class":233},"'\n",[768,769,770],"style",{},"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);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":98,"searchDepth":290,"depth":290,"links":772},[773,779,784,785,786],{"id":80,"depth":290,"text":81,"children":774},[775,776,777,778],{"id":85,"depth":313,"text":86},{"id":123,"depth":313,"text":124},{"id":146,"depth":313,"text":147},{"id":168,"depth":313,"text":169},{"id":188,"depth":290,"text":189,"children":780},[781,782,783],{"id":195,"depth":313,"text":196},{"id":214,"depth":313,"text":215},{"id":243,"depth":313,"text":244},{"id":268,"depth":290,"text":21},{"id":401,"depth":290,"text":402},{"id":675,"depth":290,"text":676},"Get started with jscpd.","md",null,{},{"icon":19},{"description":793,"title":16},"Install jscpd copy/paste detector.","BDixHNzwyYlpnm17gbokRSblsF6yp3c7sViJV2DdZwU",[796,798],{"title":11,"path":12,"stem":13,"description":797,"icon":14,"children":-1},"Welcome to jscpd documentation.",{"title":21,"path":22,"stem":23,"description":799,"icon":24,"children":-1},"Configure jscpd for your project.",1772457399361]