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

dsh-web-git-sidebar

v0.5.0

Published

DSH Web Git Sidebar: VS Code-style left-rail Git panel for DeepSeek Harness with branch switching, commit graph, per-commit previews and a session-following footer entry.

Readme

DSH Web Git Sidebar

Git, where your eyes already are.

A VS Code-style Source Control panel for DeepSeek Harness, living in the left rail. Branches, graph, previews, and push-state — one click from the left rail. No telemetry. No cloud. Just git.

License: MIT DSH Platform

Features · Tour · Install · Dev


Full Git panel with branches and commit graph

What you get

| | | |---|---| | Branch switcher | Search, switch, create. ↑N ↓M ahead/behind, ✓ in sync, ● local-only. | | Commit graph | SVG rails with merge curves in living color — rings for merges, branch lines that join back. Click any row to expand it. | | Commit preview | Files (A/M/D), +ins −del, message body, author, timestamp. Hover any row for the gist. | | Who's who | Every author gets their own dot color — scan a hundred commits at a glance. | | Footer dock | An always-on branch dropdown + recent commits docked above Settings. Follows your open session, hides on non-git workspaces. Click the header to collapse, drag (or focus and use arrow keys on) the top edge to resize — it remembers. | | Pull / fetch | One button. It fetches when you are in sync and fast-forwards when you are behind, and tells you what happened. | | ⚡ Fast | Status + branches + graph in one batched host call, cached, skeleton placeholders — no empty flashes. |

Every host git command runs under a deadline, so a stalled repository degrades into an error instead of wedging the panel.

Tour

Quick tour

Footer dock in the sidebar

Install

dsh plugin --profile web add dsh-web-git-sidebar

Restart the web UI once (new host routes), refresh — the Git icon appears in the left rail.

Local hacking? Clone and link it instead:

git clone https://github.com/RaditPasya/dsh-web-git-sidebar.git
dsh plugin --profile web add link:$(pwd)/dsh-web-git-sidebar

Dev loop

pnpm install
node scripts/build.mjs            # lib/index.js (host) + lib/client.js (browser)
MINIFY=0 node scripts/build.mjs   # dev variant: readable output, intact stack traces

Builds are minified by default (the client bundle is ~45% smaller raw, ~22% smaller gzipped). Use MINIFY=0 when you want to read the emitted JS or get usable host stack traces.

link: installs pick up rebuilds live — just refresh the page. Host-side changes (anything under src/host/ or src/index.ts) need a DSH restart, because the host bundle is loaded once at startup.

Three gates, all run in CI on every push and again before publishing:

pnpm run typecheck   # tsc --noEmit, strict, with noUnusedLocals
pnpm test            # builds lib/, then runs every suite under test/

pnpm test bundles each test/*.test.ts with esbuild into a temp directory and hands it to node --test — the sources use TypeScript parameter properties, which Node's native type stripping rejects. The suites cover the git command deadline, flight eviction, the poll backoff policy and the mutation guards, plus smoke tests that load the built bundles, so a minification or bundling regression fails pnpm test rather than the browser.

src/
├── core/        git vocabulary: commands, parsers, wire types
├── host/        workspace-gated service + /git-sidebar/* routes + SSE
└── client/
    ├── api.ts       typed fetch client
    └── sidebar/     icon · panel · footer dock · shared kit

test/            bundled by scripts/test.mjs and run with node --test
scripts/         build.mjs (esbuild) · test.mjs (bundle + run suites)

License

MIT — the industry-standard permissive license. You are free to use this software commercially, modify it, distribute it, sublicense it, and sell copies of it. The only requirements: keep the copyright notice and this permission notice in all copies. The software is provided "as is", without warranty of any kind, and the authors are not liable for any claims or damages. See LICENSE for the full text.