elastic / elastic/docs-builder
chore: Ponytail over-engineering audit — ~700 lines, 21 deps, 3 projects to cut
- Dominant language
- C#
- Stars
- 24
- Forks
- 44
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 146
Description
## What
Full repo ponytail audit surfaced ~900 lines of removable code, 21 dead or replaceable dependencies, 56 dead asset files, and 3 micro-projects that add solution sprawl without boundary benefit.
All findings are verified (grepped for actual usage, not estimated). Re-audited 2026-07-07 — see the audit-refresh comment below for what changed.
## Subtasks
### C# / .NET
- [ ] #3569 — Remove single-implementation C# interfaces (~180 lines)
- [ ] #3570 — Replace hand-rolled code with BCL/stdlib equivalents (~170 lines, fixes one separator bug)
- [ ] #3571 — Simplify verbose C# code with LINQ and idiomatic patterns (~225 lines)
- [ ] #3572 — Delete dead C# code (~150 lines + 56 dead SVG files)
- [ ] #3566 — Remove unused NuGet packages (9 packages from `Directory.Packages.props`)
- [ ] #3573 — Consolidate micro-projects in `src/` (−3 projects)
### TypeScript / Frontend
- [ ] #3567 — Remove unused npm packages (uuid, tippy.js, moment, text-diff)
- [ ] #3568 — Replace npm deps with native browser APIs (ua-parser-js, @uidotdev/usehooks, lodash, select-dom, smooth-scroll.ts → CSS)
## Net reduction
| | Cut |
|--|--|
| C# lines | ~900 |
| Dead asset files | 56 token SVGs |
| NuGet packages | −9 packages, −3 projects |
| npm packages | −4 dead, −4 native replacements |
**~900 lines, −56 files, −13 NuGet deps, −7 npm deps, −3 projects possible.**
Contributor guide
Assessment
This issue has not been assessed yet.