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

lib-starter-rollup1

v0.0.3

Published

快速创建一个JS/TS库并使用Rollup打包

Downloads

8

Readme

Lib-Starter-Rollup

快速创建一个 JS/TS 类库,使用 Rollup 打包,开箱即用。本项目不建议作为组件库开发模板,组件库更适合使用 vite 的 lib 模式。

特性

  • 支持 typescript
  • 支持 terser 压缩
  • 支持 typedoc 生成文档、vitepress 演示
  • 支持 vitest 单元测试和代码覆盖率生成
  • 支持 Github Action 自动发布 npm 包

使用教程

  1. 使用 pnpm 或者 npm 安装依赖,执行 build 脚本即可
  2. 配置 package.json:修改 package.json 的 name、main、module、types、jsdelivr、unpkg、exports,如果不清楚这些配置有什么用,可以先尝试跑一次pnpm build
  3. 配置 rollup.config.ts,如果不需要压缩可以去掉 terser 插件,如果库代码依赖别的 npm 包,那么打包 iife 包就需要编辑 external 和 iife 配置项的 globals。比如:
export default defineConfig({
    external: Object.keys(pkg.dependencies) // 如果不配置external,可能会把其他包代码打包进产物
    output: [
    {
      format: 'iife',
      file: pkg.jsdelivr,
      name: 'Test', // 这里记得给你的库换个名字哦
      extend: true,
      globals: {
        "axios": "axios" // 比如你的代码依赖使用了axios,那么这里需要配置axios,而且网页需要先加载axios再加载你的库
      },
    },
  ],
})

一些建议

  • 如果是团队维护,建议添加 prettier 和 eslint,或者一个 eslint
  • 如果设计到业务或者业务一些算法的,建议不要传到共公有 npm,而且最好打开 terser 压缩而且关闭 sourcemap