• TypeScript 64.9%
  • CSS 30.2%
  • JavaScript 2.5%
  • Nix 1.7%
  • HTML 0.7%
Find a file
NotAShelf 2feb30dc49
chore: prune deps
Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: I373cdb596a1a2b80225859ba2da07df96a6a6964
2026-01-23 00:02:52 +03:00
.github/workflows ci: add format and lint checks 2026-01-22 23:29:19 +03:00
docs docs: add project README; add demo image 2026-01-22 23:01:38 +03:00
nix nix: initial tooling 2026-01-22 23:01:41 +03:00
public initial commit 2026-01-22 23:01:36 +03:00
src initial commit 2026-01-22 23:01:36 +03:00
.envrc nix: initial tooling 2026-01-22 23:01:41 +03:00
.gitignore chore: ignore Direnv artifacts 2026-01-22 23:01:40 +03:00
.prettierignore chore: ignore irrelevant files in eslint config 2026-01-22 23:01:39 +03:00
.prettierrc initial commit 2026-01-22 23:01:36 +03:00
eslint.config.mjs initial commit 2026-01-22 23:01:36 +03:00
flake.lock nix: initial tooling 2026-01-22 23:01:41 +03:00
flake.nix nix: initial tooling 2026-01-22 23:01:41 +03:00
index.html initial commit 2026-01-22 23:01:36 +03:00
LICENSE meta: release under MPL v2.0 2026-01-22 23:01:37 +03:00
package.json chore: bump all dependencies 2026-01-22 23:29:18 +03:00
pnpm-lock.yaml chore: prune deps 2026-01-23 00:02:52 +03:00
shell.nix nix: initial tooling 2026-01-22 23:01:41 +03:00
tsconfig.json initial commit 2026-01-22 23:01:36 +03:00
vite.config.ts ci: build & deploy to GH pages 2026-01-22 23:26:17 +03:00

nix-evaluator-stats

A pretty visualiser for Nix evaluator stats from NIX_SHOW_STATS and NIX_COUNT_CALLS invocations.

Demo

ns takes the resulting JSON data from your Nix invocation with the relevant variables, and provides a pretty dashboard-like visual with the ability to compare your "snapshots" of benchmarks. Besides looking nice, it is helpful in collecting statistics about your Nix commands and tracking performance regressions in subsequent exports.

Usage

Usage instructions are provided in the initial page. Simply navigate to the site and provide the JSON export (or a file) to render the statistics. The number of rendered fields might differ based on your Nix version or implementation (Lix, Snix, etc.) Please crate an issue if the render looks wrong or incorrect.

Hacking

nix-evaluator-stats (or "ns" for short) is built with Vite, using Typescript-React (.tsx) and SolidJS. A Nix shell is provided, and NPM dependencies can be fetched with pnpm while inside the dev shell.

# Run the live server
$ pnpm run dev

# Build a static site
$ pnpm run build

If submitting pull requests, please ensure that format (pnpm run fmt) and lint (pnpm run lint) tasks are ran beforehand.

License

This project is made available under Mozilla Public License (MPL) version 2.0. See LICENSE for more details on the exact conditions. An online copy is provided here.