[{"data":1,"prerenderedAt":515},["ShallowReactive",2],{"navigation_docs":3,"trending-repo-julyx10\u002Flap":188},[4,50,82,99,135,157,173,178,183],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"\u002Fgetting-started","1.getting-started",[10,15,20,25,30,35,40,45],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F2.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F3.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F4.configuration","i-lucide-settings",{"title":26,"path":27,"stem":28,"icon":29},"Supported Formats","\u002Fgetting-started\u002Fsupported-formats","1.getting-started\u002F5.supported-formats","i-lucide-file-code",{"title":31,"path":32,"stem":33,"icon":34},"Agent Skill","\u002Fgetting-started\u002Fagent-skill","1.getting-started\u002F6.agent-skill","i-lucide-cpu",{"title":36,"path":37,"stem":38,"icon":39},"Changelog","\u002Fgetting-started\u002Fchangelog","1.getting-started\u002F7.changelog","i-lucide-scroll-text",{"title":41,"path":42,"stem":43,"icon":44},"Migrating from v4 to v5","\u002Fgetting-started\u002Fmigration","1.getting-started\u002F8.migration","i-lucide-arrow-right-left",{"title":46,"path":47,"stem":48,"icon":49},"jscpd v4 (TypeScript)","\u002Fgetting-started\u002Fv4","1.getting-started\u002F9.v4","i-simple-icons-typescript",{"title":51,"path":52,"stem":53,"children":54,"icon":6},"Guides","\u002Fguides","2.guides\u002F1.index",[55,57,62,67,72,77],{"title":51,"path":52,"stem":53,"icon":56},"i-lucide-book-open",{"title":58,"path":59,"stem":60,"icon":61},"Types of Code Clones","\u002Fguides\u002Fclone-types","2.guides\u002F2.clone-types","i-lucide-copy",{"title":63,"path":64,"stem":65,"icon":66},"How Detection Works","\u002Fguides\u002Fhow-detection-works","2.guides\u002F3.how-detection-works","i-lucide-scan-search",{"title":68,"path":69,"stem":70,"icon":71},"Duplication Trend over Git History","\u002Fguides\u002Fhistory","2.guides\u002F4.history","i-lucide-chart-no-axes-combined",{"title":73,"path":74,"stem":75,"icon":76},"Project Dashboard","\u002Fguides\u002Fdashboard","2.guides\u002F5.dashboard","i-lucide-layout-dashboard",{"title":78,"path":79,"stem":80,"icon":81},"Project Health Score","\u002Fguides\u002Fhealth","2.guides\u002F6.health","i-lucide-heart-pulse",{"title":83,"path":84,"stem":85,"children":86,"icon":6},"CI & Hooks","\u002Fci-and-hooks","3.ci-and-hooks\u002F1.index",[87,89,94],{"title":83,"path":84,"stem":85,"icon":88},"i-lucide-git-pull-request",{"title":90,"path":91,"stem":92,"icon":93},"Use jscpd in CI","\u002Fci-and-hooks\u002Fci","3.ci-and-hooks\u002F2.ci","i-lucide-github",{"title":95,"path":96,"stem":97,"icon":98},"Use jscpd in Pre-Commit Hook","\u002Fci-and-hooks\u002Fpre-commit","3.ci-and-hooks\u002F3.pre-commit","i-lucide-git-commit",{"title":100,"path":101,"stem":102,"children":103,"icon":105},"Reporters","\u002Freporters","4.reporters\u002F1.index",[104,106,110,115,120,125,130],{"title":100,"path":101,"stem":102,"icon":105},"i-lucide-file-chart-column",{"title":107,"path":108,"stem":109,"icon":29},"HTML Reporter","\u002Freporters\u002Fhtml","4.reporters\u002F2.html",{"title":111,"path":112,"stem":113,"icon":114},"JSON Reporter","\u002Freporters\u002Fjson","4.reporters\u002F3.json","i-lucide-braces",{"title":116,"path":117,"stem":118,"icon":119},"Badge Reporter","\u002Freporters\u002Fbadge","4.reporters\u002F4.badge","i-lucide-award",{"title":121,"path":122,"stem":123,"icon":124},"SARIF Reporter","\u002Freporters\u002Fsarif","4.reporters\u002F5.sarif","i-lucide-shield-check",{"title":126,"path":127,"stem":128,"icon":129},"CodeClimate \u002F GitLab Reporter","\u002Freporters\u002Fcodeclimate","4.reporters\u002F6.codeclimate","i-lucide-flag-triangle-right",{"title":131,"path":132,"stem":133,"icon":134},"OpenMetrics Reporter","\u002Freporters\u002Fopenmetrics","4.reporters\u002F7.openmetrics","i-lucide-activity",{"title":136,"path":137,"stem":138,"children":139,"icon":6},"Benchmarks","\u002Fbenchmarks","5.benchmarks\u002F1.index",[140,142,147,152],{"title":136,"path":137,"stem":138,"icon":141},"i-lucide-gauge",{"title":143,"path":144,"stem":145,"icon":146},"Detection Speed","\u002Fbenchmarks\u002Fdetection-speed","5.benchmarks\u002F2.detection-speed","i-lucide-zap",{"title":148,"path":149,"stem":150,"icon":151},"Multi-Format Detection","\u002Fbenchmarks\u002Fcross-format","5.benchmarks\u002F3.cross-format","i-lucide-layers",{"title":153,"path":154,"stem":155,"icon":156},"AI Token Efficiency","\u002Fbenchmarks\u002Fai-token-efficiency","5.benchmarks\u002F4.ai-token-efficiency","i-lucide-sparkles",{"title":158,"path":159,"stem":160,"children":161,"icon":163},"API","\u002Fapi","6.api\u002F1.index",[162,164,169],{"title":158,"path":159,"stem":160,"icon":163},"i-lucide-code",{"title":165,"path":166,"stem":167,"icon":168},"Rust Crates (v5)","\u002Fapi\u002Fcore","6.api\u002F2.core","i-lucide-box",{"title":170,"path":171,"stem":172,"icon":168},"MCP Server","\u002Fapi\u002Fmcp-server","6.api\u002F4.mcp-server",{"title":174,"path":175,"stem":176,"icon":177},"Trending","\u002Ftrending","7.trending","i-lucide-trending-up",{"title":179,"path":180,"stem":181,"icon":182},"Research","\u002Fresearch","8.research","i-lucide-graduation-cap",{"title":184,"path":185,"stem":186,"icon":187},"Articles","\u002Farticles","9.articles","i-lucide-newspaper",{"name":189,"url":190,"appearances":191,"latest":204},"julyx10\u002Flap","https:\u002F\u002Fgithub.com\u002Fjulyx10\u002Flap",[192],{"date":193,"rank":194,"stars":195,"starsToday":196,"headSha":197,"sources":198,"lines":199,"clones":200,"duplicatedLines":195,"percentage":201,"healthScore":202,"healthGrade":203},"2026-09-25",9,2929,122,"69a1633836d9a6a5d63f6ed8fcaf0f253f133726",459,140984,267,2.08,59.4,"C",{"date":193,"generatedAt":205,"name":189,"url":190,"description":206,"language":207,"stars":195,"starsToday":196,"defaultBranch":208,"headSha":197,"durationMs":209,"total":210,"formats":214,"topClones":279,"health":374,"complexity":411,"deadCode":462},"2026-09-25T05:28:58.613Z","An offline-first photo manager for large local libraries","Vue","main",1238,{"sources":198,"lines":199,"tokens":211,"clones":200,"duplicatedLines":195,"duplicatedTokens":212,"percentage":201,"percentageTokens":213},892719,21608,2.42,[215,222,228,235,242,249,255,262,269,275],{"format":216,"sources":217,"lines":218,"clones":219,"duplicatedLines":220,"percentage":221},"rust",29,32537,140,1507,4.63,{"format":223,"sources":224,"lines":225,"clones":224,"duplicatedLines":226,"percentage":227},"typescript",71,30647,735,2.4,{"format":229,"sources":230,"lines":231,"clones":232,"duplicatedLines":233,"percentage":234},"yaml",6,1389,22,366,26.35,{"format":236,"sources":237,"lines":238,"clones":239,"duplicatedLines":240,"percentage":241},"markdown",39,3787,11,85,2.24,{"format":243,"sources":244,"lines":245,"clones":246,"duplicatedLines":247,"percentage":248},"bash",21,1277,8,72,5.64,{"format":250,"sources":251,"lines":252,"clones":230,"duplicatedLines":253,"percentage":254},"html",58,5778,64,1.11,{"format":256,"sources":257,"lines":258,"clones":259,"duplicatedLines":260,"percentage":261},"javascript",20,4920,4,37,0.75,{"format":263,"sources":264,"lines":265,"clones":266,"duplicatedLines":267,"percentage":268},"json",15,14964,1,33,0.22,{"format":270,"sources":271,"lines":272,"clones":266,"duplicatedLines":273,"percentage":274},"markup",119,1052,10,0.95,{"format":276,"sources":239,"lines":277,"clones":266,"duplicatedLines":230,"percentage":278},"css",618,0.97,[280,291,301,312,323,330,339,347,356,364],{"format":229,"lines":281,"tokens":282,"firstFile":283,"secondFile":287},65,448,{"name":284,"start":285,"end":286},".github\u002Fworkflows\u002Fpr-build.yml",257,321,{"name":288,"start":289,"end":290},".github\u002Fworkflows\u002Frelease-windows.yml",104,170,{"format":229,"lines":292,"tokens":293,"firstFile":294,"secondFile":297},49,375,{"name":284,"start":295,"end":296},73,121,{"name":298,"start":299,"end":300},".github\u002Fworkflows\u002Frelease.yml",86,134,{"format":223,"lines":302,"tokens":303,"firstFile":304,"secondFile":308},31,254,{"name":305,"start":306,"end":307},"src-vite\u002Fsrc\u002Fcomponents\u002FContent.vue:typescript",2444,2474,{"name":309,"start":310,"end":311},"src-vite\u002Fsrc\u002Fviews\u002FImageViewer.vue:typescript",694,723,{"format":216,"lines":313,"tokens":314,"firstFile":315,"secondFile":319},25,241,{"name":316,"start":317,"end":318},"src-tauri\u002Fsrc\u002Ft_dedup.rs",315,339,{"name":320,"start":321,"end":322},"src-tauri\u002Fsrc\u002Ft_sqlite.rs",3258,3285,{"format":229,"lines":237,"tokens":324,"firstFile":325,"secondFile":328},237,{"name":284,"start":326,"end":327},217,255,{"name":288,"start":253,"end":329},102,{"format":216,"lines":331,"tokens":332,"firstFile":333,"secondFile":337},34,231,{"name":334,"start":335,"end":336},"src-tauri\u002Fsrc\u002Ft_heif.rs",92,125,{"name":334,"start":300,"end":338},167,{"format":216,"lines":244,"tokens":340,"firstFile":341,"secondFile":344},212,{"name":320,"start":342,"end":343},9125,9145,{"name":320,"start":345,"end":346},9203,9223,{"format":216,"lines":348,"tokens":349,"firstFile":350,"secondFile":353},24,193,{"name":320,"start":351,"end":352},4981,5004,{"name":320,"start":354,"end":355},5970,5993,{"format":216,"lines":257,"tokens":357,"firstFile":358,"secondFile":361},184,{"name":320,"start":359,"end":360},6079,6098,{"name":320,"start":362,"end":363},6110,6129,{"format":216,"lines":365,"tokens":366,"firstFile":367,"secondFile":371},28,181,{"name":368,"start":369,"end":370},"src-tauri\u002Fsrc\u002Ft_cmds.rs",1598,1625,{"name":368,"start":372,"end":373},1677,1704,{"score":202,"grade":203,"size":375,"dimensions":378},{"lines":376,"files":219,"class":377},84315,"M",[379,396,405],{"id":380,"source":381,"value":382,"adjusted":382,"lines":383,"halfLife":384,"formats":385,"excluded":392,"weight":266,"score":395},"duplication","jscpd",2.7,2293,8.5,[386,216,256,223,243,387,388,389,390,391],"vue","cpp","perl","c","powershell","objectivec",[270,393,394],"text","data",80,{"id":397,"source":381,"value":398,"adjusted":399,"lines":400,"halfLife":401,"coverage":402,"weight":403,"score":404},"dead-code",0.8,0.9,401,7.5,59,0.59,92.1,{"id":406,"source":381,"value":407,"adjusted":408,"lines":409,"halfLife":410,"weight":266,"score":331},"complexity",79.1,77.8,66726,50,{"total":412,"mean":413,"files":414},12507,89.3,[415,419,424,429,433,438,443,447,452,457],{"path":320,"complexity":416,"lines":417,"bytes":418},2525,10235,391453,{"path":420,"complexity":421,"lines":422,"bytes":423},"src-vite\u002Fsrc\u002Fcomponents\u002FContent.vue",1522,10354,372632,{"path":425,"complexity":426,"lines":427,"bytes":428},"src-tauri\u002Fsrc\u002Ft_utils.rs",886,4449,158300,{"path":368,"complexity":430,"lines":431,"bytes":432},678,3415,117113,{"path":434,"complexity":435,"lines":436,"bytes":437},"src-vite\u002Fsrc\u002Fcommon\u002Fapi.js",466,2156,56673,{"path":439,"complexity":440,"lines":441,"bytes":442},"src-tauri\u002Fsrc\u002Ft_image.rs",381,1905,65569,{"path":316,"complexity":444,"lines":445,"bytes":446},262,943,31198,{"path":448,"complexity":449,"lines":450,"bytes":451},"src-tauri\u002Fsrc\u002Ft_video.rs",236,1445,46360,{"path":453,"complexity":454,"lines":455,"bytes":456},"src-vite\u002Fsrc\u002Fviews\u002FImageEditor.vue",204,2398,83121,{"path":458,"complexity":459,"lines":460,"bytes":461},"src-vite\u002Fsrc\u002Fcommon\u002Futils.ts",199,699,21785,{"percentage":463,"findings":251,"files":464,"byCategory":465,"largest":476},0.81,95,[466,468,471,473],{"category":467,"count":266},"unused-file",{"category":469,"count":470},"unused-export",3,{"category":472,"count":260},"unused-symbol",{"category":474,"count":475},"unused-import",17,[477,481,486,489,493,498,502,504,508,512],{"category":467,"path":478,"name":479,"line":266,"lines":480},"src-vite\u002Fsrc\u002Fcomponents\u002FSearchBox.vue","",138,{"category":472,"path":482,"name":483,"line":484,"lines":485},"src-vite\u002Fsrc\u002Fcomponents\u002FPerson.vue","showBetaTooltip",611,30,{"category":472,"path":420,"name":487,"line":488,"lines":217},"cancelIndexing",5077,{"category":472,"path":490,"name":491,"line":492,"lines":257},"src-vite\u002Fsrc\u002Fcomponents\u002FFileInfo.vue","previewFormatLabel",627,{"category":472,"path":494,"name":495,"line":496,"lines":497},"src-vite\u002Fsrc\u002Fcommon\u002Fshortcuts.ts","getBindingSignatures",546,18,{"category":472,"path":499,"name":500,"line":501,"lines":497},"src-vite\u002Fsrc\u002Fcomponents\u002FMoveTo.vue","props",40,{"category":472,"path":503,"name":500,"line":240,"lines":497},"src-vite\u002Fsrc\u002Fcomponents\u002FTitleBar.vue",{"category":472,"path":490,"name":505,"line":506,"lines":507},"histogramChannelLabel",594,16,{"category":472,"path":509,"name":510,"line":511,"lines":239},"src-vite\u002Fsrc\u002Fcomponents\u002FSelectionPanel.vue","multiSelectDateRange",294,{"category":472,"path":513,"name":514,"line":233,"lines":273},"src-vite\u002Fsrc\u002Fviews\u002FHome.vue","isCheckingUpdate",1790314226545]