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

acme-manager-cli

v0.1.0

Published

Let's Encrypt 证书一键申请/管理/续期/删除的 Web 面板(多用户各装各的,数据在各自家目录)

Readme

acme-manager-cli

Let's Encrypt 证书一键申请 / 管理 / 续期 / 删除的 Web 面板。多用户各装各的,数据在各自家目录,天然隔离。

安装

npm install -g acme-manager-cli

使用

acme start
# 或指定端口 / 密码
acme start --port 8080 --password 你的密码

打开 http://127.0.0.1:8080(默认)即可使用。

  • 首次启动自动创建数据目录 ~/.acme-manager/(config.json、db.sqlite、证书文件)
  • 每个用户在自己的家目录运行各自实例,端口、密码、数据完全独立

功能

  • 一键申请证书:HTTP-01(自动占用 80 端口响应验证)/ Webroot(验证文件写入网站目录)/ DNS-01(支持通配符证书)
  • 多域名 SAN 证书(每行一个,支持 *.example.com
  • 证书管理:列表、到期剩余天数、详情、下载 zip(fullchain.pem + privkey.pem)、删除
  • 手动续期 + 每日自动检查续期(到期前 30 天,可在设置中调整)
  • DNS 服务商:Cloudflare / 阿里云 / DNSPod,凭证在设置页管理
  • ACME 环境切换:staging(测试)/ production(生产),默认 staging
  • 可选密码保护(config.json 设置 password)

配置文件 ~/.acme-manager/config.json

首次运行自动生成:

{
  "host": "127.0.0.1",
  "port": 8080,
  "password": "",
  "acmeEnv": "staging",
  "autoRenew": true,
  "renewBeforeDays": 30
}

修改后重启生效。

证书文件

签发成功后保存在 ~/.acme-manager/certs/<域名>/

fullchain.pem   完整证书链
privkey.pem     私钥

直接在 Nginx 中引用:

ssl_certificate     /home/你的用户名/.acme-manager/certs/example.com/fullchain.pem;
ssl_certificate_key /home/你的用户名/.acme-manager/certs/example.com/privkey.pem;

注意事项

  • HTTP-01 独立模式需要 80 端口空闲且以 root 运行(sudo acme start);否则请用 webroot 或 DNS-01
  • 通配符域名只能用 DNS-01
  • 首次申请建议先用默认 staging 环境验证流程,确认没问题后在设置中切换 production
  • 证书续期后需要重启你的 Web 服务(如 nginx -s reload)才会生效

开发

npm install
npm start

依赖仅 3 个:express / acme-client / better-sqlite3。Node >= 18。