texxasrulez/signature_randomizer

Roundcube plugin: multi-variant signatures with weighted randomization and theme-native UI.

0.9.7 2025-08-20 22:04 UTC

This package is auto-updated.

Last update: 2025-08-20 22:05:53 UTC


README

Signature Randomizer is a Roundcube plugin that allows each identity to have multiple signatures.
Each signature can be weighted, randomized, and managed through a built-in UI.

  • 🎲 Randomly insert a signature when composing an email.
  • ⚖️ Assign weights to control how often each variant is chosen.
  • 🖊️ Manage variants per identity in Roundcube settings.
  • 📤 Import / export signature sets as JSON.
  • 🔀 Shuffle or preview directly from the toolbar.

Features

  • Weighted signatures: Increase or decrease the probability of each variant being chosen.
  • Per-identity management: Each Roundcube identity can have its own set of variants.
  • UI integration: Manages signatures directly in the Roundcube Identities settings.
  • AJAX actions: Add, save, duplicate, delete, reorder variants seamlessly.
  • Composing integration: Works in both compose and reply modes.
  • Import/Export: JSON-based backup and restore of signatures.

Installation

1. Via Composer (recommended)

From your Roundcube root directory:

composer require your-vendor/signature_randomizer

This installs the plugin under plugins/signature_randomizer/.

2. Manual installation

  1. Download the plugin archive.
  2. Extract it into the Roundcube plugins/ directory:
roundcubemail/
└── plugins/
    └── signature_randomizer/
        ├── signature_randomizer.php
        ├── config.inc.php.dist
        ├── localization/
        ├── skins/
        └── ...

Configuration

  1. Copy the sample config to make it active:
cp plugins/signature_randomizer/config.inc.php.dist plugins/signature_randomizer/config.inc.php
  1. Edit config.inc.php to adjust plugin options as needed.

Enabling the Plugin

Edit config/config.inc.php and add signature_randomizer to the plugins array:

$config['plugins'][] = 'signature_randomizer';

Clear Roundcube cache if necessary:

bin/cleancache.sh

Usage

  • Go to Settings → Identities → Signature Randomizer section.
  • Add multiple signature variants for each identity.
  • Assign weights (higher weight = higher probability).
  • Use the toolbar buttons for:
    • Shuffle / Preview signatures
    • Import or Export JSON of all variants
  • When composing an email, a random signature (based on weight) will be inserted automatically.

Requirements

  • PHP >= 7.4
  • Roundcube Mail >= 1.4

Uninstallation

If installed via Composer:

composer remove your-vendor/signature_randomizer

If installed manually, remove the plugins/signature_randomizer/ directory.

License

MIT License

Credits

  • Original Author(s): Gene Hawkins AKA texxasrulez
  • Contributions welcome!