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

@kntic/links

v0.4.6

Published

CLI for building and deploying self-hosted link-in-bio pages. No accounts, no tracking — just HTML.

Readme

@kntic/links

License: MIT npm version Node >= 18

A CLI for building and deploying link-in-bio pages. No accounts, no tracking, no third-party servers. You own the HTML.


Quick Start

Five commands from zero to a deployed page:

# 1. Install
npm install -g @kntic/links

# 2. Scaffold a new project
links init my-page && cd my-page

# 3. Add some links
links add "GitHub" "https://github.com/you"
links add "Blog"   "https://your-blog.dev"

# 4. Build a self-contained HTML file
links deploy --self

# 5. Open it
open dist/index.html

That's it. dist/index.html is a single file — inline CSS, base64 avatar, no external requests. Drop it on any static host.


Install

npm install -g @kntic/links

Requires Node.js 18 or later.


Command Reference

| Command | Description | |---------|-------------| | links init [directory] | Scaffold a new links.yaml project. --force to overwrite. | | links add <label> <url> | Add a link. --from/--until for scheduling, --update to replace. | | links remove <label> | Remove a link by label (case-insensitive). | | links list | List all links. --json for machine-readable output. | | links deploy --self | Generate a self-contained HTML page to dist/. --out <dir> to change output, --open to open in browser. | | links theme list | List available themes. | | links theme set <name> | Set the active theme in links.yaml. | | links qr | Generate a QR code for your page URL. | | links config | Open links.yaml in your $EDITOR. | | links open | Open your deployed page URL in the browser. --local for dist/index.html. | | links status | Show project config summary. |


links.yaml Schema

# Required
name: "Your Name"
url: "https://your-site.com"

# Optional
bio: "A short bio line."
avatar: "avatar.png"          # Path to image — gets base64-inlined on build
theme: "minimal-dark"          # Any theme name from src/themes/

# Links
links:
  - label: "GitHub"
    url: "https://github.com/you"
  - label: "Blog"
    url: "https://your-blog.dev"
    scheduled_from: "2026-04-01"    # Optional: link becomes visible on this date
    scheduled_until: "2026-12-31"   # Optional: link hidden after this date

Scheduling

Links support scheduled_from and scheduled_until fields (ISO 8601 date strings). The generator filters links at build time — only active links appear in the output HTML.


Themes

Five built-in themes ship with Links:

| Theme | Description | |-------|-------------| | minimal-dark | Default. Muted violet accent on dark background. | | minimal-light | Clean off-white with indigo accent. | | terminal | Green-on-black with cursor blink and scanlines. | | glass | Glassmorphism with backdrop-filter blur and purple/blue gradient. | | developer | IDE-inspired aesthetic with KNTIC orange and left border bar. |

# List themes
links theme list

# Switch theme
links theme set terminal

# Rebuild
links deploy --self

Custom Themes

Themes are plain CSS files. Copy any built-in theme and override the 17 CSS custom properties. See src/themes/README.md for the full token contract.

📸 Screenshots coming soon.


Self-Hosted by Default

links deploy --self generates a single HTML file with everything inlined:

  • CSS is embedded in a <style> tag
  • Avatar is base64-encoded into an <img> src
  • Zero external requests — no fonts CDN, no analytics, no tracking

Upload dist/index.html anywhere: Nginx, S3, GitHub Pages, Netlify, a Raspberry Pi — it doesn't matter.


Contributing

  1. Fork the repo
  2. Create a feature branch
  3. Make your changes (themes are a great first contribution)
  4. Submit a merge request

Please keep the zero-dependency-on-external-services philosophy. If it can be done with a single HTML file, it should be.


License

MIT © 2026 KNTIC