PHPackages                             cu-boulder/boulder\_base - 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. cu-boulder/boulder\_base

ActiveDrupal-custom-theme

cu-boulder/boulder\_base
========================

University of Colorado Boulder base theme

20260310(2mo ago)386.2k[32 issues](https://github.com/CuBoulder/tiamat-theme/issues)GPL-2.0-or-laterCSSCI passing

Since Nov 9Pushed 1mo ago2 watchersCompare

[ Source](https://github.com/CuBoulder/tiamat-theme)[ Packagist](https://packagist.org/packages/cu-boulder/boulder_base)[ RSS](/packages/cu-boulder-boulder-base/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)DependenciesVersions (74)Used By (0)

tiamat-theme
============

[](#tiamat-theme)

Drupal 10+ Base theme for CU Boulder web properties

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

[](#installation)

Add below to `composer.json` require section:

```
"cu-boulder/boulder_base" : "dev-main"

```

Add to repositories section:

```
{
    "type": "git",
    "url" : "https://github.com/CuBoulder/tiamat-theme.git"
}

```

**Note:** This theme is installed and set as the default with the profile. The theme is not intended to be used without the profile or other `cu-boulder/*` modules.

> To install a local version of Nextpress, follow the steps outlined in the [tiamat-project-template](https://github.com/CuBoulder/tiamat-project-template)

---

Theme Options
-------------

[](#theme-options)

Under `/admin/appearance/settings/...` you can manage various theme settings.

- Set [default values for the theme](#config) in the `boulder_base.settings.yml`
- Add more settings to the theme in `hook_system_theme_settings_alter` in [boulder\_base.theme](https://github.com/CuBoulder/tiamat-theme/blob/main/boulder_base.theme)

Linting
-------

[](#linting)

We are using stylelint and eslint

```
npm install          # install linters
npm run stylelint    # lint css
npm run eslint       # lint js

```

Linting is run automatically on all pull requests, however you can lint files locally too.

- configure eslint in `.eslintrc.json`
- configure styleint in `.stylelint.json`

---

Directory Structure
-------------------

[](#directory-structure)

### .github Directory

[](#github-directory)

Contains the github actions workflow for linting

### config

[](#config)

Contains the default values for the theme settings. If new theme settings are added, update boulder\_base.settings.yml with the default values. You can get the configuration by running `lando drush config-get boulder_base.settings` and copying the output into the file.

### css

[](#css)

- put styles relating the custom paragraphs in css/paragraphs
- put styles from the styleguide in css/styleguide

### js

[](#js)

Put JavaScript files here

### templates

[](#templates)

Twig template overrides go here including those for the custom page and paragraph types. The packages dedicated to the page and paragraph types should only contain config.

### boulder\_base.info.yml

[](#boulder_baseinfoyml)

- Define regions
- Add styles to the ckeditor
- Add globally included libraries

### boulder\_base.libraries.yml

[](#boulder_baselibrariesyml)

Define libraries

### boulder\_base.theme

[](#boulder_basetheme)

Add theme hooks

### boulder\_base.breakpoints.yml

[](#boulder_basebreakpointsyml)

This file is used by the Breakpoint and Responsive Image module. These modules are used for making images inserted with the text editor responsive.

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance70

Regular maintenance activity

Popularity35

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity61

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~18 days

Recently: every ~10 days

Total

68

Last Release

60d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8b717634bb237615f360e13a5b1d2efc6f40cb17f77568f8a6401aa978921b4e?d=identicon)[OSRWebDeploy](/maintainers/OSRWebDeploy)

---

Top Contributors

[![patrickbrown-io](https://avatars.githubusercontent.com/u/85851903?v=4)](https://github.com/patrickbrown-io "patrickbrown-io (1000 commits)")[![jcsparks](https://avatars.githubusercontent.com/u/12704433?v=4)](https://github.com/jcsparks "jcsparks (574 commits)")[![timurtripp](https://avatars.githubusercontent.com/u/22628823?v=4)](https://github.com/timurtripp "timurtripp (458 commits)")[![jacob-korf](https://avatars.githubusercontent.com/u/56124082?v=4)](https://github.com/jacob-korf "jacob-korf (315 commits)")[![jnicholCU](https://avatars.githubusercontent.com/u/94021017?v=4)](https://github.com/jnicholCU "jnicholCU (303 commits)")[![web-flow](https://avatars.githubusercontent.com/u/19864447?v=4)](https://github.com/web-flow "web-flow (70 commits)")[![AlanBCole](https://avatars.githubusercontent.com/u/23508839?v=4)](https://github.com/AlanBCole "AlanBCole (2 commits)")[![tirazel](https://avatars.githubusercontent.com/u/12451503?v=4)](https://github.com/tirazel "tirazel (1 commits)")

### Embed Badge

![Health badge](/badges/cu-boulder-boulder-base/health.svg)

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

PHPackages © 2026

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