XPerf
XPerf helps you find real performance smells across 19 languages — guides plus heuristic linters that stay honest: a hit means “look here,” not “this will be faster,” until paired fixtures and a measured before/after say otherwise.
Docs site: lbb00.github.io/xperf. Rule IDs are semantic slugs (~169 active).
Languages
| Package | Language | Active rules |
|---|---|---|
| zperf | Zig | 31 |
| cperf | C11/C17 (light C++) | 12 |
| jsperf | JavaScript / TypeScript (V8/Node) | 11 |
| jvmperf | Java (JVM) | 29 |
| goperf | Go | 10 |
| pyperf | Python | 6 |
| swiftperf | Swift | 8 |
| arktsperf | ArkTS (HarmonyOS; lint via Node) | 4 |
| cppperf | C++17 (separate from cperf) | 6 |
| csharpperf | C# | 10 |
| phpperf | PHP | 3 |
| rubyperf | Ruby | 7 |
| rustperf | Rust | 7 |
| kotlinperf | Kotlin (≠ jvmperf JMH) | 3 |
| objcperf | Objective-C (≠ swiftperf) | 8 |
| dartperf | Dart | 4 |
| luaperf | Lua | 3 |
| beamperf | Elixir + Erlang (BEAM) | 4 |
| nimperf | Nim | 4 |
Versions and defaults: docs/kits.md.
Quick start
cd packages/zperf/zperf-lint
zig build -Doptimize=ReleaseFast
./zig-out/bin/zperf-lint ../examplesNeeds Zig 0.17+. Other languages: that kit’s README, or docs/quickstart.md. bash scripts/sync-check.sh checks that every package directory is present. Tagged releases ship source kits only — docs/release.md.
Docs
- Documentation site — these guides on GitHub Pages
- docs/ — method and kit index
- docs/release.md — what we publish
- CONTRIBUTING.md
- AGENT.md — how agents must work this repo (G0–G7, incl. privacy)
- CODE_OF_CONDUCT.md · SECURITY.md · CHANGELOG.md
Layout
docs/ Shared docs
packages/ One kit per language
scripts/ sync-check, doc-check, build-guides, privacy-check, pack-source-distZig’s build.zig lives only under packages/zperf/zperf-lint/.
License
MIT — LICENSE.
This tree was written end-to-end by Grok Bot. Humans set requirements and reviewed the results.