PHPackages                             studiometa/foehn-starter - 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. studiometa/foehn-starter

ActiveProject[Framework](/categories/framework)

studiometa/foehn-starter
========================

Starter theme for Foehn — a modern WordPress framework powered by Tempest.

0.4.1(3mo ago)12MITPHPPHP ^8.4

Since Feb 10Pushed 2mo agoCompare

[ Source](https://github.com/studiometa/foehn-starter)[ Packagist](https://packagist.org/packages/studiometa/foehn-starter)[ RSS](/packages/studiometa-foehn-starter/feed)WikiDiscussions main Synced 1mo ago

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

Foehn Starter Theme
===================

[](#foehn-starter-theme)

A complete WordPress starter theme demonstrating all [Føhn](https://github.com/studiometa/foehn-framework) features.

> **Note**This package is part of the [Føhn Framework](https://github.com/studiometa/foehn-framework) monorepo. Please report issues and submit pull requests in the [main repository](https://github.com/studiometa/foehn-framework).

Quick Start with DDEV
---------------------

[](#quick-start-with-ddev)

```
composer create-project studiometa/foehn-starter my-project
cd my-project
ddev start
```

That's it. DDEV will:

1. Start PHP 8.5 + MariaDB + nginx
2. Copy `.env.example` to `.env` (with DDEV defaults)
3. Run `composer install` (generates `web/`, symlinks, wp-config.php)
4. Install WordPress with admin/admin credentials
5. Activate the starter theme

Open the site: `ddev launch`Admin panel: `ddev launch /wp/wp-admin` (admin / admin)

Quick Start without DDEV
------------------------

[](#quick-start-without-ddev)

```
composer create-project studiometa/foehn-starter my-project
cd my-project
cp .env.example .env
# Edit .env with your database credentials
composer install
```

Then point your web server's document root to the `web/` directory.

Project Structure
-----------------

[](#project-structure)

```
my-project/
├── theme/                      # WordPress theme (versioned)
│   ├── app/
│   │   ├── Blocks/             # ACF blocks
│   │   ├── ContextProviders/   # Context providers
│   │   ├── Controllers/        # Template controllers
│   │   ├── Data/               # DTOs for block context
│   │   ├── Hooks/              # WordPress hooks (actions & filters)
│   │   ├── ImageSizes/         # Custom image sizes
│   │   ├── Menus/              # Navigation menus
│   │   ├── Models/             # Custom post types (Timber models)
│   │   ├── Taxonomies/         # Custom taxonomies
│   │   └── foehn.config.php    # Framework configuration
│   ├── assets/
│   │   ├── js/                 # JavaScript (js-toolkit)
│   │   │   ├── app.js          # Entry point
│   │   │   └── components/     # Custom components
│   │   └── css/                # CSS (Tailwind v4)
│   │       ├── app.css         # Entry point
│   │       ├── base/           # Base styles
│   │       └── components/     # Component styles
│   ├── templates/              # Twig templates
│   │   ├── layouts/            # Base layouts
│   │   ├── pages/              # Page templates
│   │   └── components/         # Reusable components
│   ├── functions.php           # Single boot line
│   └── style.css               # Theme header
│
├── .ddev/                      # DDEV configuration
├── vite.config.js              # Vite build config
├── web/                        # Generated document root (gitignored)
├── .env                        # Environment variables (not needed with DDEV)
├── composer.json               # PHP dependencies
└── package.json                # JS dependencies

```

What's included
---------------

[](#whats-included)

### Custom Post Types

[](#custom-post-types)

- **Product** — with price, sale price, and product categories
- **Testimonial** — with author info and ratings

### Custom Taxonomies

[](#custom-taxonomies)

- **ProductCategory** — hierarchical, with custom rewrite
- **ProductTag** — flat taxonomy for products

### Template Controllers

[](#template-controllers)

- **SingleController** — handles all single post/page views
- **ArchiveController** — handles archives, categories, tags
- **SearchController** — search results page
- **Error404Controller** — 404 error page

### Hooks

[](#hooks)

- **ThemeHooks** — theme setup, image sizes, menus

### Context Providers

[](#context-providers)

- **GlobalContextProvider** — site info, menus, available on all templates

### Built-in Foehn Hooks (via foehn.config.php)

[](#built-in-foehn-hooks-via-foehnconfigphp)

- `CleanHeadTags` — removes unnecessary `` tags
- `DisableEmoji` — removes emoji scripts/styles
- `DisableOembed` — removes oEmbed discovery
- `DisableVersionDisclosure` — hides WordPress version
- `DisableXmlRpc` — disables XML-RPC + pingback
- `GenericLoginErrors` — hides username enumeration on login
- `YouTubeNoCookieHooks` — converts YouTube embeds to no-cookie variant

Development
-----------

[](#development)

### Front-end

[](#front-end)

```
npm install             # Install JS dependencies
npm run dev             # Start Vite dev server (HMR)
npm run build           # Build for production
npm run lint            # Lint JS, CSS and Twig
npm run fix             # Auto-fix linting issues
```

### DDEV Commands

[](#ddev-commands)

```
ddev start              # Start the environment
ddev stop               # Stop the environment
ddev launch             # Open the site in browser
ddev ssh                # SSH into the container
ddev composer install   # Run composer inside the container
ddev wp        # Run WP-CLI commands
ddev describe           # Show URLs and connection info
```

### Without DDEV

[](#without-ddev)

```
# Requirements: PHP 8.5+, Composer 2.x, MySQL/MariaDB

# Development server (via wp-cli)
wp server --docroot=web

# Or configure nginx/apache to point to web/
```

License
-------

[](#license)

MIT

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance86

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 94.1% 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 ~0 days

Total

2

Last Release

91d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7e88435dae9fed57464c2668f35d4c7dd7f874e55e9727972369538d639d6373?d=identicon)[titouanmathis](/maintainers/titouanmathis)

---

Top Contributors

[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (16 commits)")[![titouanmathis](https://avatars.githubusercontent.com/u/250145?v=4)](https://github.com/titouanmathis "titouanmathis (1 commits)")

---

Tags

wordpressthemestartertempestfoehn

### Embed Badge

![Health badge](/badges/studiometa-foehn-starter/health.svg)

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

###  Alternatives

[themosis/theme

The Themosis framework boilerplate theme.

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

Pods is a development framework for creating, extending, managing, and deploying customized content types in WordPress.

1.1k1.7k](/packages/pods-framework-pods)[devgeniem/dustpress

WordPress Theme Framework.

5496.8k23](/packages/devgeniem-dustpress)[ronilaukkarinen/dudestack

A modern WordPress stack

1131.2k](/packages/ronilaukkarinen-dudestack)

PHPackages © 2026

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