github.com/prometheus/client_golang
This is the Go client library for Prometheus. It has two separate parts, one for instrumenting application code, and one for creating clients that talk to the Prometheus HTTP API.
99/100: overall quality above the stdlib waterlevel. Compare against stdlib or another package. How ratings work. API and README badge.
The Go project is only 23x bigger than this project (2891 files against 124).
| Check | Score | Bonus | |
|---|---|---|---|
| complexity | 100 | +10 | |
| average cyclomatic complexity 3.44 against the stdlib average of 4.22 | |||
| complexity_p95 | 100 | +10 | |
| 95th percentile cyclomatic complexity 10 against the stdlib waterlevel of 15 | |||
| file_size_curve | 95 | ||
| share of small files -1.5% against the stdlib size curve | |||
| godoc_coverage | 100 | +10 | |
| 358 of 385 exported symbols carry godoc (92% against the stdlib waterlevel of 77%) | |||
| median_file_size | 100 | +2 | |
| median file 3870 B against the stdlib waterlevel of 3966 B | |||
| median_package_size | 100 | +10 | |
| median package 4931 B against the stdlib waterlevel of 21278 B | |||
| test_ratio | 62 | ||
| 193 test functions for 385 exported symbols (50% pairing, ideal band 80-100%, stdlib waterlevel 80%) | |||