PHPackages                             fediboost/fediboost - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. fediboost/fediboost

ActiveWordpress-plugin[Utility &amp; Helpers](/categories/utility)

fediboost/fediboost
===================

Automatically boost WordPress posts on connected Mastodon accounts when published via ActivityPub.

1.0.1(2mo ago)433GPL-2.0-or-laterPHPPHP &gt;=7.4CI passing

Since Jan 26Pushed 1mo agoCompare

[ Source](https://github.com/kraftbj/fediboost)[ Packagist](https://packagist.org/packages/fediboost/fediboost)[ RSS](/packages/fediboost-fediboost/feed)WikiDiscussions trunk Synced 1mo ago

READMEChangelog (3)Dependencies (5)Versions (10)Used By (0)

```
=== FediBoost ===
Contributors: kraftbj
Tags: activitypub, mastodon, fediverse, boost, social
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Automatically boost WordPress posts on connected Mastodon accounts when published via ActivityPub.

== Description ==

FediBoost extends the ActivityPub plugin by automatically boosting your WordPress posts on your connected Mastodon accounts when they are published.

When you publish a new post on your WordPress site, FediBoost will automatically boost (reblog) that post on your linked Mastodon account, helping increase visibility across the fediverse.

**Features:**

* Automatic boosting of new posts to connected Mastodon accounts
* Seamless integration with the ActivityPub plugin
* No additional configuration required after setup

**Requirements:**

* The [ActivityPub plugin](https://wordpress.org/plugins/activitypub/) must be installed and configured
* A connected Mastodon account via ActivityPub

== Installation ==

1. Ensure the ActivityPub plugin is installed and activated.
2. Upload the `fediboost` folder to `/wp-content/plugins/` or install via the WordPress plugin installer.
3. Activate FediBoost through the Plugins menu.
4. Go to Settings > FediBoost.
5. Enter your Mastodon instance URL (e.g., mastodon.social) and authorize the connection.
6. New posts will automatically be boosted to your connected Mastodon account when published.

== Frequently Asked Questions ==

= Does this plugin work without the ActivityPub plugin? =

No, FediBoost requires the ActivityPub plugin to be installed and properly configured. FediBoost extends ActivityPub's functionality to add automatic boosting capabilities.

= Can I choose which posts get boosted? =

Currently, FediBoost will boost all newly published posts. Future versions may include options to selectively boost posts based on categories, tags, or other criteria. Developers can use the `fediboost_should_boost_post` filter to programmatically control which posts are boosted. See the Developer Hooks section below for details.

= What happens if I change my WordPress authentication salts? =

FediBoost encrypts OAuth tokens using your WordPress authentication salts (defined in wp-config.php). If these salts are changed — for example, by a security plugin, during a security incident response, or by manually editing wp-config.php — all stored tokens will become invalid. You will need to reconnect your Mastodon accounts under Settings > FediBoost after any salt change. This is standard behavior for WordPress plugins that encrypt sensitive data using the built-in salts.

The OpenSSL PHP extension is required for token encryption. If OpenSSL is not available, FediBoost will not be able to store account credentials securely and will display an admin notice.

== Developer Hooks ==

FediBoost provides several filters that allow developers to customize its behavior. All filters follow WordPress coding standards and can be added to your theme's functions.php file or a custom plugin.

= fediboost_should_boost_post =

Control whether a specific post should be boosted. Return false to skip boosting for the given post. Default: true.

**Parameters:**

* `$should_boost` (bool) — Whether the post should be boosted.
* `$post` (WP_Post) — The post object being published.

**Example:**

`add_filter( 'fediboost_should_boost_post', function( $should_boost, $post ) {
    // Don't boost posts in the "internal" category.
    if ( has_category( 'internal', $post ) ) {
        return false;
    }
    return $should_boost;
}, 10, 2 );`

= fediboost_boost_delay =

Delay in seconds after ActivityPub federation completes before the boost is executed. This delay is only used when the federation completion hook fires successfully. Default: 30.

**Parameters:**

* `$delay` (int) — The delay in seconds.

**Example:**

`add_filter( 'fediboost_boost_delay', function( $delay ) {
    // Wait 2 minutes after federation before boosting.
    return 120;
} );`

= fediboost_fallback_delay =

Delay in seconds before a boost is executed when the ActivityPub federation completion hook does not fire. This acts as a safety net for older versions of the ActivityPub plugin that do not support the `activitypub_outbox_processing_complete` hook. If the federation hook fires first, the fallback is cancelled and `fediboost_boost_delay` is used instead. Default: 300 (5 minutes).

**Parameters:**

* `$delay` (int) — The fallback delay in seconds.

**Example:**

`add_filter( 'fediboost_fallback_delay', function( $delay ) {
    // Wait 10 minutes in the fallback path.
    return 600;
} );`

= fediboost_manage_capability =

WordPress capability required to manage FediBoost settings. Default: 'manage_options'. Note: a floor of 'edit_others_posts' is enforced regardless of this filter's return value, so you cannot lower the requirement below that capability.

**Parameters:**

* `$capability` (string) — The required capability.

**Example:**

`add_filter( 'fediboost_manage_capability', function( $capability ) {
    // Allow editors to manage FediBoost settings.
    return 'edit_others_posts';
} );`

= fediboost_max_accounts =

Maximum number of connected Mastodon accounts. Default: 10.

**Parameters:**

* `$max` (int) — The maximum number of accounts.

**Example:**

`add_filter( 'fediboost_max_accounts', function( $max ) {
    // Allow up to 25 connected accounts.
    return 25;
} );`

== External Services ==

FediBoost connects to external Mastodon instances that you configure (e.g., mastodon.social). This communication is essential for the plugin to function and is initiated only with the instance you explicitly provide.

**During setup:**

* FediBoost registers an OAuth application on your Mastodon instance and performs an authorization flow so it can act on your behalf.

**When a post is published:**

* FediBoost searches for the post on your Mastodon instance and performs a reblog (boost) via the Mastodon API.

**Data sent to your Mastodon instance:**

* Your instance URL
* OAuth authorization codes
* Search queries to locate your posts
* Reblog (boost) requests

**Data stored locally on your WordPress site:**

* Encrypted OAuth tokens
* Your Mastodon username
* Your Mastodon instance URL

Each Mastodon instance has its own privacy policy and terms of service. You can find a list of instances and their policies at [joinmastodon.org/servers](https://joinmastodon.org/servers).

This plugin does not send data to any third-party service other than the Mastodon instance(s) you explicitly configure.

== Changelog ==

= 1.0.1 =
* Delay boost scheduling until after ActivityPub federation completes
* Add fallback boost scheduling for older ActivityPub versions

= 1.0.0 =
* Initial release
* Automatic boosting of published posts to connected Mastodon accounts
```

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance87

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 95.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~13 days

Total

3

Last Release

85d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2e3d56273f319d19d7492f8ba06a01fd64a5724e3553b2d1f2ac0f4e399b2cfa?d=identicon)[pfefferle](/maintainers/pfefferle)

---

Top Contributors

[![kraftbj](https://avatars.githubusercontent.com/u/88897?v=4)](https://github.com/kraftbj "kraftbj (66 commits)")[![cagrimmett](https://avatars.githubusercontent.com/u/8738771?v=4)](https://github.com/cagrimmett "cagrimmett (1 commits)")[![claude](https://avatars.githubusercontent.com/u/81847?v=4)](https://github.com/claude "claude (1 commits)")[![pfefferle](https://avatars.githubusercontent.com/u/2373?v=4)](https://github.com/pfefferle "pfefferle (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/fediboost-fediboost/health.svg)

```
[![Health](https://phpackages.com/badges/fediboost-fediboost/health.svg)](https://phpackages.com/packages/fediboost-fediboost)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
