SimpleNS uses a plugin-based architecture that allows you to extend its capabilities by adding new notification providers without modifying the core system.
Why Plugins?
Plugins keep the core lean while enabling unlimited extensibility. Add only the providers you need, exactly how you need them configured.
Use the @simplens/config-gen CLI to generate plugin configuration:
# Generate config for a pluginnpx @simplens/config-gen generate @simplens/nodemailer-gmail# Add to existing confignpx @simplens/config-gen gen @simplens/mock -c simplens.config.yaml# List available pluginsnpx @simplens/config-gen list --official
This creates simplens.config.yaml with the plugin configuration. You'll need to set the required environment variables in .env.
SimpleNS automatically installs plugins to .plugins/ on startup based on your simplens.config.yaml.
# Generate config for single or multiple pluginsnpx @simplens/config-gen generate @simplens/nodemailer-gmailnpx @simplens/config-gen gen @simplens/mock @simplens/nodemailer-gmail# Add to existing confignpx @simplens/config-gen gen @simplens/nodemailer-gmail -c simplens.config.yaml# List available pluginsnpx @simplens/config-gen list --officialnpx @simplens/config-gen list --community
Plugins are installed to the .plugins/node_modules/ directory, keeping them separate from your core dependencies.