[{"data":1,"prerenderedAt":482},["ShallowReactive",2],{"navigation_docs":3,"trending-repo-derv82\u002Fwifit3":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},"derv82\u002Fwifit3","https:\u002F\u002Fgithub.com\u002Fderv82\u002Fwifit3",[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-26",5,1003,183,"d2cf284ef29a93968ec30e192cdad1535374affd",1179,282948,2576,60003,21.21,44.1,"D",{"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":256,"health":351,"complexity":381,"deadCode":433},"2026-09-26T05:27:46.278Z","Wifite but USB-only & cross-platform.","Python","master",2261,{"sources":198,"lines":199,"tokens":212,"clones":200,"duplicatedLines":201,"duplicatedTokens":213,"percentage":202,"percentageTokens":214},2261495,539865,23.87,[216,223,230,237,244,249,253],{"format":217,"sources":218,"lines":219,"clones":220,"duplicatedLines":221,"percentage":222},"python",1088,269722,2553,59166,21.94,{"format":224,"sources":225,"lines":226,"clones":227,"duplicatedLines":228,"percentage":229},"txt",19,4872,16,580,11.9,{"format":231,"sources":232,"lines":233,"clones":234,"duplicatedLines":235,"percentage":236},"markdown",52,7599,6,243,3.2,{"format":238,"sources":239,"lines":240,"clones":241,"duplicatedLines":242,"percentage":243},"yaml",9,502,1,14,2.79,{"format":245,"sources":246,"lines":247,"clones":248,"duplicatedLines":248,"percentage":248},"bash",2,90,0,{"format":250,"sources":251,"lines":252,"clones":248,"duplicatedLines":248,"percentage":248},"text",8,89,{"format":254,"sources":241,"lines":255,"clones":248,"duplicatedLines":248,"percentage":248},"toml",74,[257,268,277,286,297,306,315,324,333,344],{"format":217,"lines":258,"tokens":259,"firstFile":260,"secondFile":264},1047,18840,{"name":261,"start":262,"end":263},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Fbb_agc_tab_tbl.py",11,1057,{"name":265,"start":266,"end":267},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Fagc_tbl.py",10,3149,{"format":217,"lines":269,"tokens":270,"firstFile":271,"secondFile":274},773,13902,{"name":272,"start":262,"end":273},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Frf_radio_a_tbl.py",783,{"name":275,"start":266,"end":276},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Frf_a_tbl.py",2326,{"format":217,"lines":278,"tokens":279,"firstFile":280,"secondFile":283},771,13866,{"name":281,"start":262,"end":282},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Fbb_phy_reg_tbl.py",781,{"name":284,"start":266,"end":285},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Fbb_tbl.py",2320,{"format":217,"lines":287,"tokens":288,"firstFile":289,"secondFile":293},755,13569,{"name":290,"start":291,"end":292},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Frf_radio_d_tbl.py",23,777,{"name":294,"start":295,"end":296},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Frf_d_tbl.py",48,2309,{"format":217,"lines":298,"tokens":299,"firstFile":300,"secondFile":303},742,13341,{"name":301,"start":291,"end":302},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Frf_radio_c_tbl.py",764,{"name":304,"start":295,"end":305},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Frf_c_tbl.py",2271,{"format":217,"lines":307,"tokens":308,"firstFile":309,"secondFile":312},733,13188,{"name":310,"start":262,"end":311},"src\u002Fwifit3\u002Fchips\u002Frtl8814au_dkms\u002Frf_radio_b_tbl.py",743,{"name":313,"start":266,"end":314},"src\u002Fwifit3\u002Fchips\u002Frtw88_8814au\u002Fassets\u002Frf_b_tbl.py",2207,{"format":217,"lines":316,"tokens":317,"firstFile":318,"secondFile":321},429,7677,{"name":281,"start":319,"end":320},354,782,{"name":284,"start":322,"end":323},1041,2321,{"format":217,"lines":325,"tokens":326,"firstFile":327,"secondFile":330},867,5202,{"name":328,"start":266,"end":329},"src\u002Fwifit3\u002Fchips\u002Frtl8821au\u002Fassets\u002Frf_a_tbl.py",876,{"name":331,"start":194,"end":332},"src\u002Fwifit3\u002Fchips\u002Frtl8821au_dkms\u002Frf_radioa_tbl.py",221,{"format":217,"lines":334,"tokens":335,"firstFile":336,"secondFile":340},122,3871,{"name":337,"start":338,"end":339},"src\u002Fwifit3\u002Fchips\u002Frtl8822bu_dkms\u002Frf_radioa_tbl.py",724,845,{"name":341,"start":342,"end":343},"src\u002Fwifit3\u002Fchips\u002Frtl8822bu_dkms\u002Frf_radiob_tbl.py",577,698,{"format":217,"lines":196,"tokens":345,"firstFile":346,"secondFile":348},3286,{"name":310,"start":240,"end":347},684,{"name":301,"start":349,"end":350},523,706,{"score":203,"grade":204,"size":352,"dimensions":355},{"lines":353,"files":218,"class":354},269766,"L",[356,367,374],{"id":357,"source":358,"value":359,"adjusted":360,"lines":361,"halfLife":362,"formats":363,"excluded":364,"weight":241,"score":366},"duplication","jscpd",21.9,21.8,59150,8.5,[217,245],[250,365],"data",16.9,{"id":368,"source":358,"value":369,"adjusted":369,"lines":370,"halfLife":371,"coverage":372,"weight":241,"score":373},"dead-code",2.3,6268,7.5,100,80.6,{"id":375,"source":358,"value":376,"adjusted":377,"lines":378,"halfLife":379,"weight":241,"score":380},"complexity",33.3,33.2,89720,50,63.1,{"total":382,"mean":383,"files":384},30343,27.9,[385,390,395,399,404,409,414,419,424,428],{"path":386,"complexity":387,"lines":388,"bytes":389},"src\u002Fwifit3\u002Fui\u002Fscreens\u002Ffocus_v2\u002Fscreen.py",332,1233,56695,{"path":391,"complexity":392,"lines":393,"bytes":394},"src\u002Fwifit3\u002Fchips\u002Frtl8922au\u002Fphy.py",317,1444,69608,{"path":396,"complexity":397,"lines":263,"bytes":398},"src\u002Fwifit3\u002Fui\u002Fscreens\u002Fscanner.py",288,44677,{"path":400,"complexity":401,"lines":402,"bytes":403},"src\u002Fwifit3\u002Fchips\u002Frtl8822cu\u002Fphy.py",227,1240,60345,{"path":405,"complexity":406,"lines":407,"bytes":408},"scripts\u002Fchips\u002Fmt7921au\u002Fverify_pcap.py",200,778,36660,{"path":410,"complexity":411,"lines":412,"bytes":413},"src\u002Fwifit3\u002Fdot11\u002Fparser.py",197,772,32603,{"path":415,"complexity":416,"lines":417,"bytes":418},"scripts\u002Fchips\u002Frtl8922au\u002Fverify_pcap.py",191,589,28153,{"path":420,"complexity":421,"lines":422,"bytes":423},"src\u002Fwifit3\u002Fcampaigns\u002Fpin.py",188,730,33537,{"path":425,"complexity":421,"lines":426,"bytes":427},"src\u002Fwifit3\u002Fchips\u002Frtl8922au\u002Fmac.py",1674,88631,{"path":429,"complexity":430,"lines":431,"bytes":432},"scripts\u002Fporting\u002Fmt76_verify_replay.py",174,567,23746,{"percentage":434,"findings":435,"files":436,"byCategory":437,"largest":449},2.32,596,1128,[438,440,443,446],{"category":439,"count":242},"unused-file",{"category":441,"count":442},"unused-export",393,{"category":444,"count":445},"unused-symbol",58,{"category":447,"count":448},"unused-import",131,[450,452,455,458,461,464,467,470,473,478],{"category":439,"path":429,"name":451,"line":241,"lines":431},"",{"category":439,"path":453,"name":451,"line":241,"lines":454},"scripts\u002Fporting\u002Frtw88_pcap_replay.py",557,{"category":439,"path":456,"name":451,"line":241,"lines":457},"src\u002Fwifit3\u002Fcampaigns\u002Fwep\u002Ffragmentation.py",331,{"category":439,"path":459,"name":451,"line":241,"lines":460},"scripts\u002Fporting\u002Fmt76usb_pcap_replay.py",238,{"category":439,"path":462,"name":451,"line":241,"lines":463},"scripts\u002Fporting\u002Frt2x00_pcap_replay.py",224,{"category":439,"path":465,"name":451,"line":241,"lines":466},"src\u002Fwifit3\u002Fcampaigns\u002Fdecloak.py",123,{"category":439,"path":468,"name":451,"line":241,"lines":469},"src\u002Fwifit3\u002Fchips\u002Fmt7921au\u002Fassets\u002Fmt7921au_init.py",95,{"category":439,"path":471,"name":451,"line":241,"lines":472},"scripts\u002Fdev.py",94,{"category":447,"path":474,"name":475,"line":476,"lines":477},"src\u002Fwifit3\u002Fchips\u002Frtl8822bu\u002Fconstants.py","BASIC_RATES_2G",15,73,{"category":447,"path":474,"name":479,"line":480,"lines":481},"BIT_DDMACH0_CHKSUM_CONT",17,71,1790404984585]