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

nuxt-wcferry

v0.1.7

Published

适用于 Nuxt 的微信机器人框架

Readme

Nuxt Wcferry

npm version npm downloads bundle JSDocs License

适用于 Nuxt 的微信机器人框架,使用如下开源项目强力驱动:

Features

  • ⛰ 享用 Nuxt 的所有特性
  • 🛠️ 全自动导入机器人技能
  • 🔓 技能中间件和全局中间件
  • 🌲 可编程的 Nitro Corn Task
  • 🦾 内置 DLL,无需关心回调
  • 💻 基于 wcferry 的 PC Hook
  • 🔍 Wechaty API 可用

Quick Setup

Install:

pnpx nuxi module add nuxt-wcferry

Skills:

// server/wcferry/skills/*.ts
/**
 * 在群里说:@机器人 ping
 * 机器人回复:pong
 */
export default defineBotCommandHandler({
  command: "ping",
  handler({ message, _command, _args }) {
    message.say("pong");
  },
});

Middleware:

// server/wcferry/middleware/*.ts
export default defineBotMiddleware({
  // 仅在 message 类事件中
  hook: "message",
  handler(message) {
    console.log(message.talker().name());
  },
});

然后在技能定义中使用 middleware: '<小驼峰中间件文件名>'即可应用。不要返回任何值,返回任何值即意味着技能被拦截,将立即中断剩余中间件和技能的执行。

还可以使用 *.global.ts 定义全局中间件,在所有技能执行前都会执行。

Tasks:

export default defineCronTask({
  pattern: "* * * * *",
  async run() {
    const bot = useBot();
    console.log(`Hi, I am ${bot.currentUser.name()}, now is ${new Date()}`);
    return {
      result: true,
    };
  },
});

Nitro 内置了 Task 功能,但不能在运行时编写定时任务,考虑到大多数机器人都会有定时任务,这个函数应该会有帮助。

Wechaty 和 Wcferry:

const bot = useBot(); // Wechaty 实例
const puppet = useBotPuppet(); // puppetWcferry 实例
const agent = useBotAgent(); // WcferryAgent 实例

That's it! You can now use Nuxt Ferry in your Nuxt app ✨

Funding

Contribution

# Install dependencies
npm install

# Generate type stubs
npm run dev:prepare

# Develop with the playground
npm run dev

# Build the playground
npm run dev:build

# Run ESLint
npm run lint

# Run Vitest
npm run test
npm run test:watch

# Release new version
npm run release

License

MIT License © 2024-PRESENT mrrhq