xerj-org/xerj

XERJ is the new way for AI to search data. Its autoindex capability activates agents to know your data without the token waste of grep and sed. One command indexes code, docs, logs and PDFs for search, RAG, security audits and agent memory, using 40x fewer tokens than grep. Elasticsearch compatible, so existing clients just work.

Rust★ 5,902+715 that day#3 on trending

Analyzed October 16, 2026 at 4556557 (main) with jscpd v5 in 5.9s.

D40.2/100
Project health528,796 lines of code (L)
Duplication60
6.3% in rust, javascript, python, bash, java, perl, powershell, c, php, sql, c-header
Dead code7
28.7%
Complexity35
75.2%

The score is jscpd's own --health model: markup, data and text left out, tests kept. The numbers below are the trending scan's.

4.7%duplicated code · 18,584 of 395,537 lines
1,404clones in code
570code files of 3,046 scanned
15.18%duplicated over all files · 6,781 clones

The code number leaves out tests, fixtures, docs, examples, data files, styles, translations and vendored code, and 5 generated files: .github/scripts/prev_tag.sh, engine/crates/xerj-engine/src/secret_hash.rs, landing/chart-data.js, landing/playground/src/data/feedback-citations.js, xerj-ux/src/data/feedback-citations.js.

Largest clones in the code

  • 342 lines in 2 placesjavascript3,050 tokens
    10import { esc, fmt } from './text.js';
    11
    12const minMax = (xs) => {
    13  let mn = Infinity, mx = -Infinity;
    14  for (const x of xs) { if (x < mn) mn = x; if (x > mx) mx = x; }
    15  return [mn === Infinity ? 0 : mn, mx === -Infinity ? 0 : mx];
    16};
    17
    18// Andrew's monotone chain — O(n log n) convex hull.
    19function convexHull(points) {
    

    First 10 of 342 lines.

  • 343 lines in 2 placesjavascript2,597 tokens
    14import { Num, fmt }               from './text.js';
    15import { Spark, Series, Dist, Heatmap, Multiples } from './charts.js';
    16import { VBar, Hist, Gauge, Scatter, Stacked, Treemap } from './charts-ext.js';
    17import { EmbedSpace, Ribbon3D, ChordArcs, ParallelCoords, AttentionMap, FlowBand } from './charts-ai.js';
    18import { Table, Markdown }        from './tables.js';
    19import { TopN, Events }           from './layout.js';
    20
    21// ---------- demo data (deterministic) ---------------------
    22const demoSeries = Array.from({ length: 48 }, (_, i) =>
    23  50 + Math.sin(i / 5.5) * 22 + Math.cos(i / 3.2) * 9 + ((i * 37) % 7)
    

    First 10 of 343 lines.

  • 332 lines in 2 placesjavascript2,317 tokens
    748const secA = e.target.closest('[data-section]');
    749if (secA) {
    750  e.preventDefault();
    751  const sid = secA.getAttribute('data-section');
    752  if (sid === 'dashboards') {
    753    location.hash = '#/dashboards';
    754  } else {
    755    location.hash = '#/' + sid;
    756  }
    757  return;
    

    First 10 of 332 lines.

7 more
Largest clones over all files, tests and data included
By format, code only
FormatFilesLinesClonesDuplicated linesDuplication
rust317336,7311,25712,3723.67%
javascript10528,7961065,84320.29%
python9622,879322731.19%
bash506,8059961.41%
perl1168000%
powershell1158000%
By format, all files
FormatFilesLinesClonesDuplicated linesDuplication
markup20286,3772,55360,36469.88%
rust551431,6252,17823,6235.47%
yaml32559,91359512,36020.63%
log349,5223206,14064.48%
markdown702131,70329213,40410.18%
javascript15648,7872878,09616.59%
json269108,86821914,66313.47%
text21610,5281253,79736.07%
python18737,552761,2973.45%
css77,310671,97827.06%

Trending appearances

DayRankStarsFilesLinesClonesAll filesCodeHealthCommit
Oct 16, 2026#35,902 (+715)3,046964,0976,78115.18%4.7%D 40.24556557

Want this for your own project? Install jscpd and run jscpd ., or measure it the way the baselines were measured.