npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

kshana

v0.25.0

Published

Open, reproducible PNT-resilience simulator with quantum-sensor performance models

Readme

Kshana is an open, reproducible PNT-resilience simulator with quantum-sensor performance models — positioning, navigation, and timing. This package is the Rust engine compiled to WebAssembly: it runs entirely client-side — pass a scenario TOML string in, get a reproducible JSON result and an SVG chart back, with nothing uploaded. Every result is reproducible from scenario + seed + engine version, and every sensor parameter is traceable to a published source.

Validated, not asserted. 666/666 AIAA SGP4 vectors to 4.12 mm · Cowell force model 0.08 m vs Orekit 12.2 · Galileo 0.61 m / Swarm-A 0.10 m vs real ESA precise ephemerides · GCRS→ITRS bit-for-bit vs SOFA/ERFA · ML metrics exact vs scikit-learn · 56 of 102 capabilities validated against independent external oracles; 42 honestly labelled Modelled, 4 partner-owned.

Validated against external oracles — every row CI-gated

| | Capability | Result | External oracle | |---|---|---|---| | ✅ | SGP4/SDP4 propagation | 666/666 vectors, worst 4.12 mm | AIAA 2006-6753 (Vallado) + independent sgp4 crate | | ✅ | Numerical Cowell force model | 0.08 m / 24 h, 275 epochs | Orekit 12.2 DormandPrince853 (CS GROUP) | | ✅ | Orbit fit vs precise ephemeris | Galileo 0.61 m · Swarm-A 0.10 m | ESA/ESOC SP3 precise orbits | | ✅ | GCRS→ITRS frame chain | bit-for-bit vs SOFA; ≤ 0.86 m vs SPICE | ERFA/SOFA + ANISE (pure-Rust SPICE) | | ✅ | Allan deviations | reproduce reference deviations | NIST SP 1065 + Stable32 on a real Cs clock | | ✅ | GNSS DOP · ML detector metrics | to 1e-6 · to 1e-9 | gnss_lib_py · scikit-learn |

Install

npm install kshana

Usage

The package is an ES module with a WebAssembly payload. Initialise it once, then call the engine synchronously:

import init, { run, run_full, chart_svg, version } from "kshana";

await init();                                   // load the wasm

const toml = `kind = "clock_holdover"\n# ... scenario fields ...`;
const result = JSON.parse(run(toml));
console.log(version(), result.classical.fom.timing_p95_ns);

// JSON result + SVG chart in one call:
const { json, svg } = run_full(toml);

Beyond run / run_full / version, the module also exports summary (the one-line result string), list_kinds / error_kind (introspection), and encode_permalink / decode_permalink — the shareable-URL codec the playground uses to round-trip a whole scenario through the address-bar fragment.

Every figure of merit is labelled validated or modelled; optical-clock figures are space goals on ground hardware (no strontium optical clock has flown). Maturity is not uniform across domains — Earth PNT is real-data validated; deep-space / Mars navigation is simulation-validated; real-mission deep-space OD is on the roadmap.

Learn more

Licence

Free and open source under the GNU AGPL-3.0-only. A commercial licence is available from Ashforde OÜ for proprietary/closed integration — see LICENSING.md. Professionally developed and maintained by Ashforde OÜ; commercial support, integration, and proprietary extensions available.