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 🙏

© 2024 – Pkg Stats / Ryan Hefner

hivepanel

v0.9.1

Published

Get your swarm together with 📦 hivepanel, a Docker Swarm control panel

Downloads

13

Readme

📦 Hivepanel

Docker Swarm UI for self hosting.

Preview

Goals:

  • Build a community and clearly communicate goals and roadmap
  • Keep it simple, keep it lean and mean
  • Modern UX that caters to both beginners and experts
  • Accessible navigation, each screen must have a URL
  • API-first, every feature must be easy to control via API
  • Specification-first, every feature must have an intended way of working
  • Expose the full power of Docker Swarm if needed
  • Zero downtime deployments
  • Installation should not affect the existing cluster
  • Support for alternative web servers: Traefik, Caddy, Nginx
  • Focus on single VPS usage, only consider cluster support if contributors use it themselves
  • Features must undergo automated testing before every release
  • Consider project sustainability from the start

The prototype contains these features:

  • [x] Traefik web server
  • [x] Manage memory limits
  • [x] Manage labels
  • [x] Start/stop/scale services with one click
  • [x] Edit service spec
  • [x] Detect failing services
  • [ ] Wildcard certificate generation
  • [x] Environment variable editing
  • [ ] Hover over system info to see live stats
  • [x] Ports mapping
  • [x] Volumes management

Up for discussion:

  • What is a good default for automatically cleaning up disk space? Decide based on free disk space after every build?
  • How to build adapters for alternative webservers like caddy, nginx, ...
  • Should most logic run on the server or on the client?
  • Operation queuing system: multiple deploys should be queued one after the other
  • All config in service labels (like traefik), does that make sense or is it unpractical?
  • Mount /etc/ufw and integrate ufw support?
  • Would a built-in share functionality for services/stacks improve community collaboration?
  • How to make swarm join/leave easier?
  • How to handle multi-server deployments? Should the hivepanel container run on all nodes?
  • Is it useful to give a name to each node in the cluster?
  • Import/export services as .zip that includes the mounted volumes
  • Authenticate using WebAuthn
  • If it were easer to setup a registry of service templates (like builtin) would more people contribute?
  • If people could like/comment on templates, would more people contribute?
  • How to make the project sustainable?
    • Use commonly used technologies
    • Build on top of stable tech
    • Push contributor information inside panel?
    • Pay for support?
  • Which npx commands should be available?
    • start: local or immediately in swarm?
    • upgrade: pull latest docker image and restart service
  • Show available docker tags to make it easy to upgrade a service

Alternatives:

  • Caprover
  • Coolify
  • Easypanel
  • Portainer
  • Rancher
  • Shipyard
  • Swarmpit
  • Swirl
  • Traefik Pilot
  • UCP

Publish new version

yarn version --minor
# or
yarn version --patch