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

@irailmetro/rmt-cli

v0.2.3

Published

CLI for scaffolding iPLAT4J Maven projects

Readme

rmt-cli

iPLAT4J 模板脚手架命令行工具(TypeScript + tsup)。

特性

  • 内置模板:v6-gbasev7-dm
  • 命令参数:commander
  • 交互输入:inquirer
  • 终端美化:chalk
  • 默认执行:mvn -DskipTests validate

安装与本地调试

全局安装(推荐):

npm i -g @irailmetro/rmt-cli

升级:

npm update -g @irailmetro/rmt-cli

卸载:

npm uninstall -g @irailmetro/rmt-cli

本地开发调试:

cd rmt-cli
pnpm i
pnpm link --global

命令

rmt -h
rmt -v
rmt create --help

质量校验

# 类型检查
npm run check

# 构建
npm run build

# e2e(模板生成规则校验)
npm run test:e2e

# CI 等价本地校验
npm run ci

创建项目

rmt create --template v6-gbase --name rmplat4j-v6-gbase \
  --groupId com.baosight.rmplat4j \
  --artifactId rmplat4j-parent \
  --projectName rmplat4j \
  --moduleName rm \
  --keep-demo

不带参数时按顺序交互:

  1. template
  2. name
  3. groupId
  4. artifactId
  5. projectName
  6. moduleName
  7. keepDemo

规则

  1. 包名:com.baosight.<projectName>
  2. service 包:com.baosight.<projectName>.<moduleName>
  3. 模块 artifactId:<projectName>-bom/common/service/web
  4. 示例代码策略:
    • 默认:删除 demo/dm 示例代码,仅新增目录:
      • common/src/main/java/com/baosight/<projectName>/<moduleName>
      • service/src/main/java/com/baosight/<projectName>/<moduleName>
      • service/src/main/resources/META-INF/resources/<MODULE_NAME_UPPERCASE>
      • web/src/main/java/com/baosight/<projectName>
      • 同时删除示例页面资源:service/src/main/resources/META-INF/resources/DM
    • --keep-demo:保留模板里的 demo/dm 示例代码,同时新增以上目录
  5. 启动类策略(与 --keep-demo 无关):
    • 模板 DemoApplication.java 会统一转换为 com.baosight.<projectName>.<ProjectName>Application
    • 文件名、类名、类内 DemoApplication.class 引用同步替换

可选参数

  • --skip-validate:跳过 mvn -DskipTests validate
  • --force:目标目录非空时覆盖
  • --output <dir>:指定输出父目录
  • --template-dir <dir>:覆盖内置模板目录
  • --keep-demo:保留模板中的 demo/dm 示例代码

发布

手动发布(本地)

npm run ci
npm publish --access public

自动发布(GitHub Tag)

仓库内置工作流:

发布步骤:

# 1) 提交代码
git add .
git commit -m "chore: release v0.2.2"
git push

# 2) 打 tag(版本号需与 package.json 一致)
git tag v0.2.2
git push origin v0.2.2

说明:

  1. release.yml 会校验 package.json 的 version 是否与 tag 一致,不一致会失败。
  2. 发布命令为 npm publish --access public --provenance
  3. 可用 NPM_TOKEN(GitHub Secret)发布;也可配置 npm Trusted Publishing(OIDC)。