PHPackages                             vatu/base-theme - 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. vatu/base-theme

ActiveWordpress-theme

vatu/base-theme
===============

Vatu Base theme.

41.7k1[68 issues](https://github.com/vatu-team/base-theme/issues)[3 PRs](https://github.com/vatu-team/base-theme/pulls)PHPCI passing

Since Jun 5Pushed 1mo agoCompare

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

READMEChangelogDependenciesVersions (7)Used By (0)

Base Theme
==========

[](#base-theme)

[![Commit](https://github.com/vatu-team/base-theme/actions/workflows/commit.yml/badge.svg)](https://github.com/vatu-team/base-theme/actions/workflows/commit.yml)

Introduction
------------

[](#introduction)

I'm a 'base theme' template to be used to build custom themes from. I'm a living project, not to be used as a dependency for your plugin.

My core principles are:

- Keep It Simple
- Object Oriented PHP with features built as Services
- Limited build tools based upon WordPress Scripts
- Vanilla CSS
- Vanilla JS

### How we like to build themes

[](#how-we-like-to-build-themes)

- Prefer styles over user customisation: Allow the Editor to choose a large hero style over asking them to customise the patterns font size, spacing, alignment
- Prefer patterns over building with blocks: Provide a pattern of blocks over asking the Editor to add multiple blocks
- `Theme.json` should be used as a config file. Not for writing CSS. We like to test our CSS for quality purposes.

[Documentation](https://github.com/vatu-team/base-themes/blob/trunk/docs/readme.md)
-----------------------------------------------------------------------------------

[](#documentation)

### Directory Structure

[](#directory-structure)

The aim of the directory structure for this plugin is to keep everything well-organized.

```
├── .github
├── assets
│   ├── css
│   ├── fonts
│   │── js
│   └── svg
├── parts
├── patterns
├── resources
│   ├── css
│   ├── fonts
│   │── js
│   └── svg
├── src
│   ├── Application
│   ├── Domain
│   ├── Infrastructure
│   │── Theme.php
│   └── ThemeFactory.php
├── styles
├── templates
├── tests
├── tools
├── vendor
├── composer.json
├── functions.php
├── package.json
├── style.css
├── theme.json
└── webpack.config.js
```

- `/.github/`
- `/assets/` Compiled assets such as CSS, Fonts, JavaScript, and SVG.
- `/build/` Compiled block assets.
- `/src/`
    - `/src/Application/` Exposes the functionality of the domain to other application layers as hooks and filters (an API).
    - `/src/Domain/` Modules of code based upon the business needs
        - `/src/Domain/Service` A layer which aims to organize the services ito a set of logical layers. Services within a layer share a smilar set of activities.
            - `/src/Domain/Service.php`
    - `/src/Infrastructure/`
    - `/src/Theme.php` This file is respobnsible for loading and instantiating one or more `Service` objects.
    - `/src/ThemeFactory.php`
- `/tests/` Project tests and configutation related to testing the projects.
- `/tools/` Development tools not specific to the project.
- `/base-theme.php` Bootstrap file for WordPress to load.
- `/composer.json` Configuration for our PHP dependencies.
- `/package.json` Configuration for our Node/NPM dependencies.

### Service Structure

[](#service-structure)

A service is a grouping of functionality. An example of a `Service` could include the methods for handling a Form submission along side functionality it needs such as requirement checks, validation, and error handling.

Services can run hooks upon Registration by `implements Registrable`. This requires a `register()` method be used when WordPress actions and fillters can be added.

Base Theme Template Development
-------------------------------

[](#base-theme-template-development)

To start improving **this** template for the first time:

### Install

[](#install)

```
npm install && composer install
```

### Development

[](#development)

- `npm run start` – Watch and compiles the styles and scripts
- `npm run build` – Build a production ready instance of the styles and scripts

Test
----

[](#test)

Build a test instance of WordPress to test this theme.

- `npm run wp-env start` – Start the development environment
- `npm run wp-env start -- --xdebug` – Start the development environment with xDebug configured
- `npm run wp-env stop` – Stop the development environment
- `npm run wp-env distroy` – Distroy the development environment

Install in project
------------------

[](#install-in-project)

```
composer create-project vatu/base-theme public/app/themes/{project-name} -s dev --no-install
```

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance39

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity21

Early-stage or recently created project

 Bus Factor1

Top contributor holds 63.9% 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.

### Community

Maintainers

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

---

Top Contributors

[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (168 commits)")[![michaelbragg](https://avatars.githubusercontent.com/u/1015212?v=4)](https://github.com/michaelbragg "michaelbragg (95 commits)")

### Embed Badge

![Health badge](/badges/vatu-base-theme/health.svg)

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

PHPackages © 2026

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