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

netrun

v0.1.0

Published

NETRUN — a terminal-native computer life simulator. Earn, upgrade your rig, run contracts. Classic 1998 and Modern 2026 eras.

Readme

NETRUN

A terminal-native computer life simulator. Start with nothing, take contracts, upgrade your rig, manage heat and burnout, survive the bills. A clean-room spiritual successor to the 1998 Russian shareware classic «Компьютерщик».

 NETRUN                                  ₿ 0.000600 ($36)  Day 1  ⚡100  Heat 0/100  Rep 0
 [1:Contracts] [2:Rig] [3:Market] [4:AI Models] [5:Stats] [6:Settings]
┌──────────────────────────────────────────────────────────────────────────────────┐
│ 1. Scraper Cleanup — 10,633 sats · risk low · ~2u · exp d4                       │
│ 2. Backup Restore Job — 11,639 sats · risk low · ~3u · exp d4                    │
│ 3. Lost Wallet Recovery — 21,779 sats · risk low · ~3u · exp d4                  │
├──────────────────────────────────────────────────────────────────────────────────┤
│ > accept 1                                                                       │
│ Contract accepted: Scraper Cleanup (deadline: day 3)                             │
│ > run                                                                            │
│ Progress 1/2 (+1)                                                                │
└──────────────────────────────────────────────────────────────────────────────────┘

Two eras

  • CLASSIC (1998) — dollars, dial-up modems, boot-sector viruses, BBS gigs, demo-scene compos, Y2K audits.
  • MODERN (2026) — sats (live BTC/USD display rate), GPUs and NPUs, AI model tools (Nano/Coder/Analyst/Oracle/Local-7B), wallet recovery and agent audits.

Same engine, different content pack. Pick the era at launch or pass --mode classic|modern.

Install & play

npx netrun            # easiest (Node >= 22)
# or
npm i -g netrun && netrun

Single-file binaries (no Node needed) are built per release for macOS (arm64/x64), Linux (x64), and Windows (x64, experimental): npm run binaries produces them in dist-bin/.

How it plays

Everything is keyboard + commands: tab/1-6 switch tabs, ↑/↓ select or walk command history, enter accepts/buys the selection or submits the typed command. Type help for the full list:

contracts · accept N · run [manual|hw|tool] [--safe] · abort
market · buy N · sell <id> · install <id> · uninstall <slot> · repair <slot>
tools · use <tool|none> · clean · status · rig · sleep · save · new · quit

The loop: accept a contract → choose an approach (manual labor, raw hardware, or an AI model/software tool) → run until it's done → get paid → upgrade → sleep. Sleeping pays rent and upkeep, restores energy, cools heat, rotates the contract board, and sometimes rolls an incident — malware, hardware damage, a surprise bill. Hardware wears out and breaks; infections grind it down nightly; deadlines miss; crit-fails hallucinate fake leads. Heat at 100 gets you busted; a negative balance ends the run. Quest chains (completing some contracts unlocks the next step) pull you into tier 2 and 3 work — if your rig and reputation can carry it.

Game state autosaves on every sleep and on quit; the game resumes automatically. Saves live in the OS data dir (~/Library/Application Support/netrun on macOS; override with NETRUN_DATA_DIR).

Headless mode (scripting / testing)

The whole game runs without the TUI through the same engine:

netrun --headless --seed 42 --mode modern \
  --script e2e/scripts/smoke.cmds --out transcript.json --rate 60000

The transcript records every command's parsed actions, emitted events, output lines, and a state snapshot — fully deterministic for a given seed (the RNG state lives inside the save file).

Under the hood

Built with TypeScript, React 19 and Ink 7 — the whole UI is React rendering to your terminal. The game core is a pure deterministic reducer with the RNG state inside the save file, so every run replays identically for a given seed. Distributed as a compiled bundle.

License

© 2026 Alex Struc. Free to download and play. Distributed as a compiled bundle only — redistribution of modified copies and reverse engineering are not permitted. All rights reserved.