
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
create-answer-plugin
Advanced tools
中文 | English
A powerful CLI tool for creating and managing plugins for the Apache Answer project. This tool provides scaffolding for both Backend Plugins and Standard UI Plugins, along with plugin lifecycle management.
npm install -g create-answer-plugin
# or
pnpm add -g create-answer-plugin
Note: The package name is create-answer-plugin, but the command is answer-plugin. You can also use create-answer-plugin as an alias.
# Both commands work:
npx create-answer-plugin <command>
npx answer-plugin <command>
Create a new plugin with an interactive wizard:
answer-plugin create [pluginName]
# or
answer-plugin [pluginName]
Options:
pluginName (optional): Pre-fill the plugin name--path, -p: Path to Answer project (root directory)Example:
answer-plugin create my-plugin
List all plugins in the Answer project:
answer-plugin list [path]
Options:
path (optional): Path to Answer project (defaults to current directory)Example:
answer-plugin list
answer-plugin list /path/to/answer
Install plugins to the Answer project:
answer-plugin install [plugins...] [--path <path>]
Options:
plugins (optional): Plugin names to install (defaults to all not installed plugins)--path, -p: Path to Answer projectExample:
# Install all not installed plugins
answer-plugin install
# Install specific plugins
answer-plugin install my-plugin another-plugin
Uninstall plugins from the Answer project:
answer-plugin uninstall [plugins...] [--path <path>]
Options:
plugins (optional): Plugin names to uninstall (defaults to all installed plugins)--path, -p: Path to Answer projectExample:
# Uninstall all installed plugins
answer-plugin uninstall
# Uninstall specific plugins
answer-plugin uninstall my-plugin another-plugin
Backend plugins extend Answer's backend functionality:
Standard UI plugins extend Answer's frontend UI:
answer-plugin create github-connector
The tool will guide you through:
answer-plugin create my-custom-route
For Route plugins, you'll also be prompted for the route path.
# List all plugins
answer-plugin list
# Install all plugins
answer-plugin install
# Install specific plugins
answer-plugin install plugin1 plugin2
# Uninstall plugins
answer-plugin uninstall plugin1
The tool supports configuration through environment variables:
ANSWER_PLUGINS_PATH: Custom plugins directory path (default: ui/src/plugins)ANSWER_I18N_PATH: Custom i18n directory path (default: answer-data/i18n)GO_MOD_TIDY_TIMEOUT: Timeout for go mod tidy in milliseconds (default: 30000)PNPM_INSTALL_TIMEOUT: Timeout for pnpm install in milliseconds (default: 120000)LOG_LEVEL: Logging level - DEBUG, INFO, WARN, ERROR, SILENT (default: INFO)ui/src/plugins/my-plugin/
├── my_plugin.go # Main plugin implementation
├── info.yaml # Plugin metadata
├── go.mod # Go module definition
├── i18n/ # Internationalization files
│ ├── en_US.yaml
│ ├── zh_CN.yaml
│ └── translation.go
└── README.md # Plugin documentation
ui/src/plugins/my-plugin/
├── my_plugin.go # Go wrapper
├── info.yaml # Plugin metadata
├── Component.tsx # React component
├── index.ts # Plugin entry point
├── package.json # npm dependencies
├── tsconfig.json # TypeScript config
├── vite.config.ts # Vite config
├── i18n/ # Internationalization files
│ ├── en_US.yaml
│ ├── zh_CN.yaml
│ └── index.ts
└── README.md # Plugin documentation
# Clone the repository
git clone https://github.com/answerdev/create-answer-plugin.git
cd create-answer-plugin
# Install dependencies
pnpm install
# Run in development mode
pnpm dev
# Build
pnpm build
# Verify a single plugin
pnpm verify <plugin-name>
# Verify all plugins
pnpm verify:all
# Create all plugin types for testing
pnpm create:all
Plugin Creation: The tool generates plugin scaffolding based on the selected type, including:
info.yaml, go.mod, package.json)Plugin Installation: When you run install:
cmd/answer/main.goreplace directive to go.modgo mod tidygo run ./cmd/answer/main.go i18nPlugin Uninstallation: When you run uninstall:
main.goreplace directive from go.modgo mod tidyThe tool is built with:
MIT
Contributions are welcome! Please feel free to submit a Pull Request.
FAQs
中文 | [English](README.md)
We found that create-answer-plugin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.