[{"data":1,"prerenderedAt":481},["ShallowReactive",2],{"navigation_docs":3,"trending-repo-ZuodaoTech\u002Feveryone-can-use-english":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":205},"ZuodaoTech\u002Feveryone-can-use-english","https:\u002F\u002Fgithub.com\u002FZuodaoTech\u002Feveryone-can-use-english",[192],{"date":193,"rank":194,"stars":195,"starsToday":196,"headSha":197,"sources":198,"lines":199,"clones":200,"duplicatedLines":201,"percentage":202,"healthScore":203,"healthGrade":204},"2026-09-20",9,37937,48,"3d799132046993eade5a364ddd1e557906854eda",751,94854,411,6070,6.4,69.6,"C",{"date":193,"generatedAt":206,"name":189,"url":190,"description":207,"language":208,"stars":195,"starsToday":196,"defaultBranch":209,"headSha":197,"durationMs":210,"total":211,"formats":215,"topClones":281,"health":356,"complexity":391,"deadCode":440},"2026-09-20T05:26:31.958Z","人人都能用英语","TypeScript","main",1046,{"sources":198,"lines":199,"tokens":212,"clones":200,"duplicatedLines":201,"duplicatedTokens":213,"percentage":202,"percentageTokens":214},741499,53591,7.23,[216,223,230,237,244,251,257,264,270,276],{"format":217,"sources":218,"lines":219,"clones":220,"duplicatedLines":221,"percentage":222},"tsx",277,41757,145,2019,4.84,{"format":224,"sources":225,"lines":226,"clones":227,"duplicatedLines":228,"percentage":229},"markup",88,6230,103,1580,25.36,{"format":231,"sources":232,"lines":233,"clones":234,"duplicatedLines":235,"percentage":236},"typescript",143,17590,67,986,5.61,{"format":238,"sources":239,"lines":240,"clones":241,"duplicatedLines":242,"percentage":243},"markdown",134,17324,59,716,4.13,{"format":245,"sources":246,"lines":247,"clones":248,"duplicatedLines":249,"percentage":250},"javascript",28,2119,20,533,25.15,{"format":252,"sources":253,"lines":254,"clones":253,"duplicatedLines":255,"percentage":256},"yaml",11,560,173,30.89,{"format":258,"sources":259,"lines":260,"clones":261,"duplicatedLines":262,"percentage":263},"mermaid",6,237,3,33,13.92,{"format":265,"sources":266,"lines":267,"clones":268,"duplicatedLines":194,"percentage":269},"scss",12,1639,1,0.55,{"format":271,"sources":272,"lines":273,"clones":268,"duplicatedLines":274,"percentage":275},"text",2,524,5,0.95,{"format":277,"sources":272,"lines":278,"clones":268,"duplicatedLines":279,"percentage":280},"python",227,16,7.05,[282,289,298,307,316,325,332,339,348,353],{"format":224,"lines":283,"tokens":284,"firstFile":285,"secondFile":287},279,3206,{"name":286,"start":268,"end":283},"1000-hours\u002Fpublic\u002Fimages\u002Fdep-graph.svg",{"name":288,"start":268,"end":283},"new-edition-drafts\u002Fimages\u002Fdep-graph.svg",{"format":224,"lines":290,"tokens":291,"firstFile":292,"secondFile":296},71,1212,{"name":293,"start":294,"end":295},"1000-hours\u002Fpublic\u002Fimages\u002Farticulators-cn.svg",4,74,{"name":297,"start":294,"end":295},"1000-hours\u002Fpublic\u002Fimages\u002Farticulators.svg",{"format":238,"lines":246,"tokens":299,"firstFile":300,"secondFile":304},804,{"name":301,"start":302,"end":303},"1000-hours\u002Fsounds-of-american-english\u002F3.1.2-ɑ.md:markdown",85,112,{"name":305,"start":290,"end":306},"1000-hours\u002Fsounds-of-american-english\u002F3.1.6-ɔ.md:markdown",98,{"format":224,"lines":308,"tokens":309,"firstFile":310,"secondFile":314},44,688,{"name":311,"start":312,"end":313},"1000-hours\u002Fpublic\u002Fimages\u002FSpeech-Tract(zh-CN).svg",32,75,{"name":293,"start":315,"end":295},31,{"format":224,"lines":317,"tokens":318,"firstFile":319,"secondFile":323},30,493,{"name":320,"start":321,"end":322},"1000-hours\u002Fpublic\u002Fimages\u002Fspeech-tract-lr.light.svg",24,53,{"name":324,"start":321,"end":322},"1000-hours\u002Fpublic\u002Fimages\u002Fspeech-tract-lr.svg",{"format":245,"lines":326,"tokens":327,"firstFile":328,"secondFile":330},148,475,{"name":329,"start":268,"end":326},"1000-hours\u002Fworkers-site\u002Findex.js",{"name":331,"start":268,"end":326},"1000h-portal\u002Fworkers-site\u002Findex.js",{"format":224,"lines":333,"tokens":334,"firstFile":335,"secondFile":338},29,469,{"name":336,"start":337,"end":322},"1000-hours\u002Fpublic\u002Fimages\u002Fspeech-tract-lr.dark.svg",25,{"name":320,"start":337,"end":322},{"format":238,"lines":259,"tokens":340,"firstFile":341,"secondFile":344},468,{"name":342,"start":343,"end":308},"1000-hours\u002Fsounds-of-american-english\u002F3.2-consonants.md:markdown",39,{"name":345,"start":346,"end":347},"1000-hours\u002Fsounds-of-american-english\u002F3.2.12-lr.md:markdown",109,114,{"format":224,"lines":349,"tokens":350,"firstFile":351,"secondFile":352},22,464,{"name":336,"start":268,"end":349},{"name":320,"start":268,"end":349},{"format":224,"lines":349,"tokens":350,"firstFile":354,"secondFile":355},{"name":336,"start":268,"end":349},{"name":324,"start":268,"end":349},{"score":203,"grade":204,"size":357,"dimensions":361},{"lines":358,"files":359,"class":360},69984,558,"M",[362,377,385],{"id":363,"source":364,"value":365,"adjusted":366,"lines":367,"halfLife":368,"formats":369,"excluded":374,"weight":268,"score":376},"duplication","jscpd",5.6,5.5,3538,8.5,[217,231,245,370,371,372,373],"vue","bash","perl","go",[224,271,375],"data",63.7,{"id":378,"source":364,"value":379,"adjusted":379,"lines":380,"halfLife":381,"coverage":382,"weight":383,"score":384},"dead-code",4.3,2687,7.5,89.5,0.895,67.5,{"id":386,"source":364,"value":387,"adjusted":387,"lines":388,"halfLife":389,"weight":268,"score":390},"complexity",17.6,12287,50,78.3,{"total":392,"mean":393,"files":394},7852,14.1,[395,400,405,410,415,420,424,428,432,437],{"path":396,"complexity":397,"lines":398,"bytes":399},"enjoy\u002Fsrc\u002Fpreload.ts",224,808,25727,{"path":401,"complexity":402,"lines":403,"bytes":404},"enjoy\u002Fsrc\u002Ftypes\u002Fenjoy-app.d.ts",220,453,14525,{"path":406,"complexity":407,"lines":408,"bytes":409},"enjoy\u002Fsrc\u002Frenderer\u002Fcomponents\u002Fmedias\u002Fmedia-bottom-panel\u002Fmedia-player-controls.tsx",150,741,21973,{"path":411,"complexity":412,"lines":413,"bytes":414},"enjoy\u002Fsrc\u002Frenderer\u002Fcontext\u002Fmedia-shadow-provider.tsx",141,780,22183,{"path":416,"complexity":417,"lines":418,"bytes":419},"enjoy\u002Fsrc\u002Frenderer\u002Fcomponents\u002Fmedias\u002Fmedia-bottom-panel\u002Fmedia-current-recording.tsx",131,891,24717,{"path":421,"complexity":303,"lines":422,"bytes":423},"enjoy\u002Fsrc\u002Fmain\u002Fwindow.ts",859,22367,{"path":425,"complexity":346,"lines":426,"bytes":427},"enjoy\u002Fsrc\u002Frenderer\u002Fcontext\u002Fchat-session-provider.tsx",535,14047,{"path":429,"complexity":302,"lines":430,"bytes":431},"enjoy\u002Fsrc\u002Frenderer\u002Fcontext\u002Fapp-settings-provider.tsx",432,12468,{"path":433,"complexity":434,"lines":435,"bytes":436},"enjoy\u002Fsrc\u002Frenderer\u002Fhooks\u002Fuse-chat-session.tsx",79,442,12334,{"path":438,"complexity":234,"lines":403,"bytes":439},"enjoy\u002Fsrc\u002Frenderer\u002Fcomponents\u002Fchats\u002Fchat-user-message.tsx",14226,{"percentage":441,"findings":227,"files":442,"byCategory":443,"largest":454},4.29,505,[444,446,448,451],{"category":445,"count":321},"unused-file",{"category":447,"count":268},"unused-export",{"category":449,"count":450},"unused-symbol",14,{"category":452,"count":453},"unused-import",64,[455,457,460,463,466,469,471,474,476,479],{"category":445,"path":396,"name":456,"line":268,"lines":398},"",{"category":445,"path":458,"name":456,"line":268,"lines":459},"enjoy\u002Fsrc\u002Frenderer\u002Fcomponents\u002Fui\u002Fuse-toast.tsx",189,{"category":445,"path":461,"name":456,"line":268,"lines":462},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1722039161323-create-chats.js",169,{"category":445,"path":464,"name":456,"line":268,"lines":465},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1726781106038-modify-chat.js",149,{"category":445,"path":467,"name":456,"line":268,"lines":468},"enjoy\u002Fsrc\u002Fmain\u002Fazure-speech-sdk.ts",128,{"category":445,"path":470,"name":456,"line":268,"lines":468},"enjoy\u002Fsrc\u002Frenderer\u002Fcomponents\u002Fui\u002Ftoast.tsx",{"category":445,"path":472,"name":456,"line":268,"lines":473},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1703902823343-create-audio.js",81,{"category":445,"path":475,"name":456,"line":268,"lines":473},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1703902826529-create-video.js",{"category":445,"path":477,"name":456,"line":268,"lines":478},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1703902870618-create-pronunciation-assessment.js",77,{"category":445,"path":480,"name":456,"line":268,"lines":478},"enjoy\u002Fsrc\u002Fmain\u002Fdb\u002Fmigrations\u002F1729731114150-create-documents.js",1789882072400]