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

mobile-monorapo

v0.0.0

Published

mobile-monorapo 是一个移动端公共部分的集成,包含 mobile-ui,mobile-cards,mobile-tag 和 mobile-axios。

Downloads

1

Readme

项目简介

mobile-monorapo 是一个移动端公共部分的集成,包含 mobile-ui,mobile-cards,mobile-tag 和 mobile-axios。

包安装

  1. 在根目录执行 pnpm i。
  2. 执行 pnpm dependence,因为 monorapo 里的包会互相依赖,所以需要事先安装这些依赖。

包调试

启动命令在package.json里都有标注,各项目的启动命令如下:

  • mobile-ui:pnpm serve:ui
  • mobile-tag:pnpm serve:tag
  • mobile-cards:pnpm serve:cards

启动后根据就可以开始调试,包的源代码在packages里面,包的源码改完即可实时预览。

包发版

  1. 切到publish分支,开发环境只支持publish分支发布包,所以要在publish分支合代码,合完不用提交代码。
  2. 执行pnpm change,选择要发版的包名,空格选中,回车是跳过。
  3. 执行pnpm rev,会自动更新包的版本号,以及包的子依赖包的版本号。
  4. 执行发布命令,发布对应的包就执行对应的命令即可:
  • mobile-ui:pnpm publish:ui
  • mobile-tag:pnpm publish:tag
  • mobile-cards:pnpm publish:cards
  1. 必须要提交publish分支代码,不然其它人发版本的版本号会有问题。

包发版分支规则

比如 mobile-ui,mobile-cards,mobile-tag 等需要发布到 npm 的组件项目需要按以下规则发版本。

  1. 所有开发人人员需要执行 npm config set save-exact=true,用来锁定包的版本号。

  2. 任何一个功能都需要从 master 分支拉出功能分支,功能分支尽量拆得细点,名称以 v 发版日-姓名缩写-功能名称来命名,比如 v1027-lxl-addButton。

  3. 新建 publish 分支,所有功能想要发版本必须先合到这个分支才能执行 npm run pub 发版,不能在功能分支直接发版本,每次发版本自动会更新次补丁版本号。

  4. 每次发版由组件维护人从 master 新建名称为 v 发版日分支,然后合需要发布的功能分支,其他人需要提合 v 发版日的 merge request,而不是提合 master 分支的 request,然后在 v 发版日分支发布到 npm,每次发版本需要手动会更新次补丁版本号。上线后,由组件维护人统一将 v 发版日分支合并到 master 分支,并删除已上线的功能分支,留存 v 发版日分支,同时,需要 publish 合下 master 确保 publish 最新。

  5. 因为组件库发版本的版本号只有X.Y.Z一种,所以各分支发版本可能会导致覆盖或带上新功能问题,所以需要版本标识符做区分。

  • alpha:α版本(对应uat),测试用,代表当前可能有很大的变动。
  • beta:β版本(对应stg),代表版本已开始稳定,但是还有bug。
  • stable:稳定版本(对应gray)。

组件库分也分uat,stg和gray分支,对应项目进行版本发布,组件库的uat对应项目的uat,stg和gray同理,发版的脚本已自动做过处理,在组件库的uat发版会带上0.0.1-alpha,stg会带上0.0.1-beta,gray会带上stable,项目中在各自的发版分支上用对应的版本标识符。