PHPackages                             michaeluno/admin-page-framework-compiler - 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. michaeluno/admin-page-framework-compiler

ActiveLibrary[Framework](/categories/framework)

michaeluno/admin-page-framework-compiler
========================================

A compiler script for Admin Page Framework, a WordPress development framework.

1.2.0(4y ago)1171MITPHPPHP &gt;=5.6.20

Since Feb 22Pushed 4y ago1 watchersCompare

[ Source](https://github.com/michaeluno/admin-page-framework-compiler)[ Packagist](https://packagist.org/packages/michaeluno/admin-page-framework-compiler)[ RSS](/packages/michaeluno-admin-page-framework-compiler/feed)WikiDiscussions main Synced 6d ago

READMEChangelogDependencies (3)Versions (6)Used By (0)

Admin Page Framework Compiler
=============================

[](#admin-page-framework-compiler)

A compiler script for Admin Page Framework, a WordPress development framework.

Installation
------------

[](#installation)

### Composer

[](#composer)

To install the library using Composer, run

```
composer require michaeluno/admin-page-framework-compiler
```

Basic Usage
-----------

[](#basic-usage)

```
$oCompiler = new \AdminPageFrameworkCompiler\Compiler( $sSourceDirPath, $sDestinationDirPath );
$oCompiler->run();
```

Options
-------

[](#options)

The options array takes the following arguments.

- `output_buffer` : (boolean) whether output buffer should be printed.
- `exclude_classes` : (array) an array holding class names to exclude.
- `css_heredoc_keys` : (array, optional) an array holding heredoc/nowdoc keywords used to assign CSS rules to a variable. For nowdoc keywords, omit enclosing single quotes.
- `js_heredoc_keys` : (array, optional) an array holding heredoc/nowdoc keywords used to assign JavaScript scripts to a variable. For nowdoc keywords, omit enclosing single quotes.
- `excludes` : (array, optional) an array storing information of items not to compile. Those items will be added but not formatted.
    - `classes` : (array) Class names to exclude from compiling.
    - `paths` : (array) File paths to exclude from compiling.
    - `file_names` : (array) File names with a file extension to exclude from compiling.
- `combine` : (array, optional) Combine option
    - `inheritance` : (boolean) Whether to combine files in the same directory with hierarchical relationships.
    - `exclude_classes` : (string|array, optional) Class names to exclude from combining.
- `search` : (array) the arguments for the directory search options.
    - `allowed_extensions`: (array) allowed file extensions to be listed. e.g. `[ 'php', 'inc' ]`
    - `exclude_dir_paths`: (array) directory paths to exclude from the list.
    - `exclude_dir_names`: (array) directory base names to exclude from the list. e.g. `[ 'temp', '_bak', '_del', 'lib', 'vendor', ]`
    - `exclude_file_names`: (array) a sub-string of file names to exclude from the list. e.g. `[ '.min' ]`
    - `exclude_substrings`: (array) sub-strings of paths to exclude from the list. e.g. `[ '.min', '_del', 'temp', 'library', 'vendor' ]`
    - `is_recursive`: (boolean) whether to scan sub-directories.
    - `ignore_note_file_names`: (array) ignore note file names that tell the parser to skip the directory. When one of the files exist in the parsing directory, the directory will be skipped. Default: `[ 'ignore-class-map.txt' ]`,
- `comment_header` : (array, optional) what header comment to insert at the top of the generated file
    - `text` : (string, optional) the header comment to set
    - `path` : (string, optional) the file path to extract the comment from
    - `class` : (string, optional) the class name to use its doc-block as the header comment
    - `type` : (string, optional) indicates what type of data to collect. Accepted values are `DOCBLOCK`, `CONSTANTS`. When `type` is `CONSTANTS`, the constants of the header class must include `VERSION`, `NAME`, `DESCRIPTION`, `URI`, `AUTHOR`, `COPYRIGHT`, `LICENSE`.

    ```
        class Sample_Registry {
          const VERSION       = '1.0.0';
           const NAME          = 'Sample Project';
           const DESCRIPTION   = 'Provides an enhanced task management system for WordPress.';
           const URI           = 'https://en.michaeluno.jp/';
           const AUTHOR        = 'miunosoft (Michael Uno)';
           const AUTHOR_URI    = 'https://en.michaeluno.jp/';
           const COPYRIGHT     = 'Copyright (c) 2014, ';
           const LICENSE       = 'GPL v2 or later';
           const CONTRIBUTORS  = '';
        }
    ```

    - `php_cs_fixer` : (array, optional) PHP CS Fixer options.
        - `config`: (string, object) The config object or the config file path.
        - `rules`: (array) An array holding custom rules.
    - `code_formatters` : (array, optional) an array holding class names or object instances of those classes that extend the `AbstractCodeFormatter` class and perform formatting of code. When an item is added, the `get()` will be called to retrieve the filtered PHP code. The PHP code is passed per-file basis.

Example
-------

[](#example)

```
$oCompiler = new \AdminPageFrameworkCompiler\Compiler(
    $sSourceDirPath,
    $sDestinationDirPath,
    [
        'output_buffer'        => true,
        'exclude_classes'      => [],
        'css_heredoc_keys'     => [ 'CSSRULES' ],       // to disable inline CSS minification, set an empty array
        'js_heredoc_keys'      => [ 'JAVASCRIPTS' ],    // to disable inline JavaScript minification, set an empty array
        'search'               => [
            'allowed_extensions'    => [ 'php' ],    // e.g. array( 'php', 'inc' )
            // 'exclude_dir_paths'  => array( $sTargetBaseDir . '/include/class/admin' ),
            'exclude_dir_names'     => [ '_document', 'document', 'cli' ],
            'exclude_dir_names_regex' => [
                '/\.bundle$/'
            ],
            'exclude_file_names'    => [
                'AdminPageFramework_InclusionClassFilesHeader.php',
                'AdminPageFramework_MinifiedVersionHeader.php',
                'AdminPageFramework_BeautifiedVersionHeader.php',
            ],
            'is_recursive'            => true,
        ],
        'include'               => [
            'allowed_extensions'    => [ 'js', 'css', 'map' ],    // e.g. array( 'php', 'inc' )
        ],
        'comment_header'        => [
            'path' => $sFilePath,
        ],
    ]
);
$oCompiler->run();
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~2 days

Total

4

Last Release

1535d ago

### Community

Maintainers

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

---

Top Contributors

[![michaeluno](https://avatars.githubusercontent.com/u/3408158?v=4)](https://github.com/michaeluno "michaeluno (69 commits)")

---

Tags

frameworkwordpresstoolcompilerbuildAdmin Page Framework

### Embed Badge

![Health badge](/badges/michaeluno-admin-page-framework-compiler/health.svg)

```
[![Health](https://phpackages.com/badges/michaeluno-admin-page-framework-compiler/health.svg)](https://phpackages.com/packages/michaeluno-admin-page-framework-compiler)
```

###  Alternatives

[themosis/theme

The Themosis framework boilerplate theme.

10449.0k3](/packages/themosis-theme)[wpstarter/framework

The WpStarter Framework - Laravel Framework for WordPress

1810.1k4](/packages/wpstarter-framework)[alleyinteractive/pest-plugin-wordpress

WordPress Pest Integration

263.7k1](/packages/alleyinteractive-pest-plugin-wordpress)

PHPackages © 2026

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