@bigbinary/neeto-webhooks-frontend

中文文档
3.3.0发布于 2026/11/03UNLICENSEDTypeScriptESM + CJS近 30 天下载 2.4万

Manage webhooks across neeto products.

原始使用文档
文档目录7 节
  1. Engine
  2. Installation
  3. Usage
  4. Frontend package
  5. Installation
  6. Instructions for development
  7. Components

neeto-webhooks-nano

The neeto-webhooks-nano manages webhooks within neeto applications. The nano exports the @bigbinary/neeto-webhooks-frontend NPM package and neeto-webhooks-engine Rails engine for development. Its webhook Playwright helpers are published independently as @bigbinary/neeto-webhooks-playwright from the playwright/ directory.

Contents

  1. Development with Host Application
  2. Instructions for Publishing
  3. Playwright helpers

Development with Host Application

Engine

The engine is used to manage webhooks across neeto products.

Installation

  1. Add this line to your application's Gemfile:

    source "NEETO_GEM_SERVER_URL" do
       # ..existing gems
    
       gem 'neeto-webhooks-engine'
    
       # Use this for live development:
       # gem 'neeto-webhooks-engine', path: "../neeto-webhooks-nano"
    end
    
  2. And then execute:

    bundle install
    
  3. Add this line to your application's config/routes.rb file:

    mount NeetoWebhooksEngine::Engine, at: "/neeto_webhooks"
    
  4. Run the following command to copy the migrations from the engine to the host application:

    rails g neeto_webhooks_engine:install
    
  5. Add the migrations to the database:

    bundle exec rails db:migrate
    
  6. Add the following line to application's config/initializer/neeto_webhooks_engine.rb file. Replace the event_identifiers with an array of unique keywords representing possible webhook events.

    NeetoWebhooksEngine.event_identifiers = ["create", "update", "cancel"]
    
  7. Add translations for the webhook events using the key format webhooks.events.webhook_event, where webhook_event is the custom-defined event_identifier.

    webhooks:
      events:
        create: "Booking creation"
        update: "Booking reschedule"
        cancel: "Booking cancellation"
    
  8. (Optional) Configure taxonomy identifiers to automatically inject taxonomy values into translation strings. The values can then be used in locale strings as interpolation variables.

    NeetoWebhooksEngine.taxonomy_identifiers = {
      customer: "singular",
      teamMember: "singular"
    }
    
  9. Add the permission neeto_webhooks_engine.manage_webhooks to your permissions.yml file.

Usage

You can learn more about the setup and usage here:

  1. Models
  2. Webhook Versioning Implementation

Frontend package

Installation

  1. Install the latest neeto-webhooks-nano package using the below command:
    yarn add @bigbinary/neeto-webhooks-frontend
    

Instructions for development

Check the Frontend package development guide for step-by-step instructions to develop the frontend package.

Components

NeetoWebhooks (source code)

This component is used to manage webhooks in your web application.

  1. It provides a user interface for viewing, adding, and editing webhooks.
  2. It also includes a user interface for listing deliveries and viewing delivery details, featuring tabs that display both request and response information.
Props

Both are required, and the component logs an error naming whichever is missing. They fail differently, which is worth knowing when one of them is wrong: without entityId the list cannot load at all, while without entityType the list still renders and only creating a webhook fails.

  • entityType: The class name of the record that owns these webhooks, and one of the values in NeetoWebhooksEngine.valid_entity_types. Usually "Organization".
  • entityId: The id of that record. Note that globalProps.organization does not carry an id in most neeto apps — it is serialized as name, subdomain, favicon and keys — so the host usually has to send the id through its own client props.
Optional Props
  • breadcrumbs: An array of objects that specify breadcrumbs for navigation.
  • helpLinkUrls: An object that specifies the URLs for the help links.
    • webhooks: The URL for the webhooks help link.
    • secrets: The URL for the secrets help link.
    • deliveries: The URL for the deliveries help link.
Usage
import React from "react";

import { NeetoWebhooks } from "@bigbinary/neeto-webhooks-frontend";
import { routes } from "common/routes";
import { BrowserRouter, Route, Switch } from "react-router-dom";
import { ToastContainer } from "react-toastify";

const Main = () => (
  <BrowserRouter>
    <div className="flex">
      <Switch>
        <Route
          path={routes.webhooks}
          component={() => (
            <NeetoWebhooks
              entityId={entityId}
              entityType={entityType}
              breadcrumbs={[
                {
                  text: "Settings",
                  link: routes.settings,
                },
                { text: "Webhook" },
              ]}
              helpLinkUrls={{
                webhooks:
                  "https://help.neetokb.com/articles/creating-a-webhook",
                secrets:
                  "https://help.neetokb.com/articles/securing-webhook-requests",
                deliveries:
                  "https://help.neetokb.com/articles/managing-webhook-deliveries",
              }}
            />
          )}
        />
      </Switch>
    </div>
    <ToastContainer />
  </BrowserRouter>
);

export default Main;

Instructions for Publishing

Consult the building and releasing packages guide for details on how to publish.

@bigbinary/neeto-webhooks-playwright is published separately from playwright/ when a merged PR has the playwright label and a patch, minor, or major label.

版本与发布记录

@bigbinary/neeto-webhooks-frontend 共发布 121 个版本,首次发布于 2023/02/03;过去 12 个月发布了 35 个版本。

版本发布日期距今
3.3.0latest2026/11/035 天前
3.2.22026/11/017 天前
3.2.2-beta1beta2026/11/017 天前
3.3.0-beta12026/10/309 天前
3.2.12026/10/309 天前
3.2.1-beta12026/10/309 天前

关于 @bigbinary/neeto-webhooks-frontend 的常见问题

@bigbinary/neeto-webhooks-frontend 是什么?

Manage webhooks across neeto products.

如何安装 @bigbinary/neeto-webhooks-frontend?

在项目目录运行 npm install @bigbinary/neeto-webhooks-frontend,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:qs(6.16.2)、url(0.11.4)、yup(0.32.11)、antd(5.22.1)、util(^0.12.5)、axios(1.20.0)、ramda(0.29.0)、react(18.3.1)、buffer(^6.0.3)、formik(2.4.6)、i18next(22.5.1)、zustand(4.4.2)、js-logger(1.6.1)、react-dom(18.3.1)、classnames(2.5.1)、stream-http(3.2.0)、tailwindcss(3.4.14)、react-helmet(^6.1.0)、os-browserify(0.3.0)、react-i18next(12.3.1)、vm-browserify(1.1.2)、@babel/runtime(7.29.7)、react-toastify(8.0.2)、tty-browserify(0.0.1)、path-browserify(^1.0.1)、https-browserify(1.0.0)、mixpanel-browser(2.45.0)、react-router-dom(5.3.3)、crypto-browserify(3.12.1)、source-map-loader(4.0.1)、stream-browserify(^3.0.0)、@bigbinary/neetoui(8.8.3)、@honeybadger-io/js(6.10.1)、@bigbinary/neeto-cist(1.0.17)、@honeybadger-io/react(6.1.25)、@tanstack/react-query(5.59.20)、@bigbinary/neeto-atoms(1.1.2)、@bigbinary/neeto-icons(1.20.89)、@bigbinary/neeto-molecules(5.9.15)、@tailwindcss/container-queries(0.1.1)、@tanstack/react-query-devtools(5.59.20)、@bigbinary/neeto-commons-frontend(4.14.8)、@bigbinary/neeto-filters-frontend(4.6.3)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@bigbinary/neeto-webhooks-frontend 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@bigbinary/neeto-webhooks-frontend 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@bigbinary/neeto-webhooks-frontend 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.13。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@bigbinary/neeto-webhooks-frontend 可以商用吗?

@bigbinary/neeto-webhooks-frontend 使用 UNLICENSED 许可。作者声明为 UNLICENSED,即不授予公开使用许可(与公共领域的 Unlicense 不同)。使用前需获得作者授权。以上为概括,不构成法律意见,请以许可原文为准。

@bigbinary/neeto-webhooks-frontend 的下载量有多少?

根据 npm 官方下载统计,@bigbinary/neeto-webhooks-frontend 在 2026/10/08 – 2026/11/06 这 30 天内被下载 24,108 次,日均约 804 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@bigbinary/neeto-webhooks-frontend 还在维护吗?

最新版本 3.3.0 发布于 2026/11/03(5 天前);至今共发布 121 个版本,其中过去 12 个月发布了 35 个;首次发布于 2023/02/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。