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

@thisishsb/mdview

v0.2.0

Published

Render local Markdown files in the browser and refresh to see disk changes.

Readme

Local Markdown File Renderer

Render a Markdown file from disk in your browser. Edit the file in any editor or with an AI agent, then refresh the page to see the latest rendered version.

Install

npm install -g @thisishsb/mdview

For local development from this repo:

npm install
npm link

Render a File

For day-to-day use, run the daemon:

mdview up

Then open:

http://127.0.0.1:5898/

Paste any absolute Markdown path into the UI. You can also start the daemon with a file already loaded:

mdview up /absolute/path/to/file.md --open

Remote Markdown URLs work too:

mdview up https://raw.githubusercontent.com/aoagents/ReverbCode/refs/heads/main/README.md --open

Stop the daemon:

mdview down

Check whether it is running:

mdview status

Daemon state is stored in ~/.mdview/state.json; logs are written to ~/.mdview/mdview.log.

Remote Markdown is cached under ~/.mdview/cache/. Each URL gets a stable hash-based cache file, plus metadata in ~/.mdview/cache/index.json. On refresh, mdview tries to fetch the URL again; if the network request fails and a cached copy exists, it renders the cached copy.

You can still run the server directly:

npm start -- /absolute/path/to/file.md

Open the URL printed by the server. It will look like:

http://127.0.0.1:5898/?file=%2Fabsolute%2Fpath%2Fto%2Ffile.md

You can also start the app without a file and paste an absolute Markdown path into the browser UI:

npm start

How Refresh Works

The browser page stores the file path or URL in the URL. Every page load calls the local server, and the server reads the Markdown file fresh from disk or fetches the remote URL before rendering it. That means normal browser refresh works the way it does for local HTML files.

There is also an Auto refresh toggle if you want the page to poll the file every second while an agent is editing it.

Notes

  • The server binds to 127.0.0.1 by default.
  • Markdown HTML is enabled, so trusted local Markdown can include inline HTML.
  • Raw HTML is disabled for remote Markdown URLs because those files may be untrusted.
  • This is a local tool intended for files on your own machine.

Release

Publishing is automated with GitHub Actions when a version tag is pushed.

One-time npm setup:

  1. In npm, add GitHub Actions as a trusted publisher for @thisishsb/mdview.
  2. Use repository harshitsinghbhandari/local-markdown-file-renderer.
  3. Use workflow filename publish.yml.
  4. Allow the npm publish action.

Release a new version:

npm version patch
git push
VERSION="$(node -p "require('./package.json').version")"
git push origin "v$VERSION"