PHPackages                             vonaffenfels/wp-plugin-skeleton - 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. [Framework](/categories/framework)
4. /
5. vonaffenfels/wp-plugin-skeleton

ActiveProject[Framework](/categories/framework)

vonaffenfels/wp-plugin-skeleton
===============================

Skeleton for development of Wordpress plugins using the vAF Wordpress Framework

1.0.0(8mo ago)058PHPCI passing

Since Aug 30Pushed 8mo ago2 watchersCompare

[ Source](https://github.com/vonAffenfels/wp-plugin-skeleton)[ Packagist](https://packagist.org/packages/vonaffenfels/wp-plugin-skeleton)[ Docs](https://github.com/vonaffenfels/wp-plugin-skeleton)[ RSS](/packages/vonaffenfels-wp-plugin-skeleton/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (5)Versions (11)Used By (0)

wp-plugin-skeleton
==================

[](#wp-plugin-skeleton)

Skeleton for development of Wordpress plugins using the vAF Wordpress Framework

Create a new plugin
-------------------

[](#create-a-new-plugin)

To create a new plugin simply run `composer create-project vonaffenfels/wp-plugin-skeleton `.

Composer will install all required dependencies for you, ask you some questions about your new plugin and will modifiy/create all necessary files for you.

Vendor prefixing
----------------

[](#vendor-prefixing)

To counter the dependancy conflict problem when using Wordpress plugins that have composer dependencies, we decided to use a technic called "Vendor Prefixing".

Here we create a new namespace where all dependencies can live in.

Take a look at the file `src/Plugin.php` so see how it works.

While developing, you MUST NOT use the dependency inside the `vendor` directory but instead use the dependency inside the `vendor_prefixed` directory. IDEs will normally show you the namespace the required class is in. Make sure, that it is prefixed with the namespace you selected when creating the new plugin.

Best way to make sure you only used the dependencies inside the `vendor_prefixed` directory, is to run the command `composer install --no-dev` after every install. That way all packages will get removed and will not be found by any IDE.

When you install a new package you MUST require it as a development dependency by running `composer require --dev `.

If you need a development dependency that should not be included in the final plugin package, simply add a new line to the file `scoper.inc.php` where you mark that packages as ignored. It will then not be prefixed.

Packaging/Deployment
--------------------

[](#packagingdeployment)

You MUST always commit the cached dependency injection container (which can be found in directory `container`).

To build the container before committing/packaging, simply run `composer build-container`. The container will then be updated to the current state.

If you want to deploy your plugin using `composer` (like in a Bedrock Wordpress environment) you don't have to do anything special.

If you want to deploy your plugin as ZIP file to use in standard Wordpress installations, run the command `composer install --no-dev` to remove all packages from `vendor` directory. Then you can ZIP the complete plugin. And don't forget to include the `vendor` directory. It contains the necessary autoloader files.

Container building
------------------

[](#container-building)

To rebuild the dependency injection container, simply run `composer build-container`.

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance60

Regular maintenance activity

Popularity8

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 59.3% 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 ~81 days

Recently: every ~182 days

Total

10

Last Release

255d ago

Major Versions

0.2.1 → 1.0.02025-08-28

### Community

Maintainers

![](https://www.gravatar.com/avatar/d12194db92a1ed59f6984ab92d75a3776f8a5223957279cd032af40d3565ffcc?d=identicon)[Saij](/maintainers/Saij)

---

Top Contributors

[![vafFriedrich](https://avatars.githubusercontent.com/u/260677623?v=4)](https://github.com/vafFriedrich "vafFriedrich (16 commits)")[![vafSpeckmaier](https://avatars.githubusercontent.com/u/233957372?v=4)](https://github.com/vafSpeckmaier "vafSpeckmaier (10 commits)")[![svensp](https://avatars.githubusercontent.com/u/7204121?v=4)](https://github.com/svensp "svensp (1 commits)")

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/vonaffenfels-wp-plugin-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/vonaffenfels-wp-plugin-skeleton/health.svg)](https://phpackages.com/packages/vonaffenfels-wp-plugin-skeleton)
```

###  Alternatives

[laravel/telescope

An elegant debug assistant for the Laravel framework.

5.2k67.8M192](/packages/laravel-telescope)[spiral/roadrunner

RoadRunner: High-performance PHP application server and process manager written in Go and powered with plugins

8.4k12.2M84](/packages/spiral-roadrunner)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M257](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

708181.8M593](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)

PHPackages © 2026

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