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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@ueba/mf-config

v0.2.2

Published

UEBA Module Federation 配置生成

Readme

@ueba/mf-config

用于生成 Module Federation 配置

使用方法

1.安装yarn add -D @ueba/mf-config
2.项目根目录中创建 mf.config.js 配置文件
3.配置 port ModuleFederationPluginproxy

// vue.config.js
const { generateConfig } = require("@ueba/mf-config");
const mfConfig = generateConfig();

module.exports = {
  //...
  configureWebpack: {
    plugins: [
      new ModuleFederationPlugin({
        ...mfConfig.plugin,
      }),
    ],
  },
  devServer: {
    port: mfConfig.port,
    proxy: {
      ...mfConfig.proxy,
    },
  },
};

mf.config.js 配置参数

| 参数 | 说明 | 类型 | 必填 | 可选值 | 默认值 | | -------------------- | --------------------------------------------------------------- | ------ | ---- | ------------ | ------ | | name | 服务的唯一名称,会使用 name 作为微服务名称,及代理/部署路径 | string | Y | - | - | | moduleName | 指定微服务暴露名称,默认会使用 name 的小驼峰写名称 | string | N | - | - | | port | 服务本地运行端口,建议微服务项目指定端口号 | number | N | - | 8080 | | exposes | 微服务导出的文件 | object | N | - | - | | services | 引入的微服务 | array | N | - | - | | services.name | 微服务的名称,同上面的 name | string | Y | - | - | | services.mode | 微服务引入模式,对应 target 下的 dev prod | string | N | dev prod | dev | | services.target | 微服务请求地址 | object | Y | - | - | | services.target.dev | 对应 modedev 的地址 | string | Y | - | - | | services.target.prod | 对应 modeprod 的地址 | string | Y | - | - |

// 示例主机配置文件 ueba
module.exports = {
  name: "ueba",
  port: 8080,
  exposes: {
    "./components": "./src/components/expose",
    "./utils": "./src/utils/expose",
  },
  services: [
    {
      name: "dashboard",
      mode: "dev",
      target: {
        dev: "http://localhost:9001",
        prod: "http://10.10.26.129",
      },
    },
  ],
};
// 示例微服务配置文件 dashboard
module.exports = {
  name: "dashboard",
  port: 9001,
  exposes: {
    "./register": "./src/views/dynamic-dashboard/dashboard.js",
    "./router/routers": "./src/router/routers",
    "./router/exportRoute": "./src/router/exportRoute",
    "./Store/dashboard": "./src/store/modules/dynamic-dashboard.js",
    "./dashboard/Components": "./src/expose",
  },
  services: [],
};