PHPackages                             howard/hu\_general - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. howard/hu\_general

ActiveDrupal-theme[Utility &amp; Helpers](/categories/utility)

howard/hu\_general
==================

Base Drupal theme for Howard University.

11.2.6(2mo ago)36382[16 PRs](https://github.com/howard-university-web-services/hu_general/pulls)GPL-2.0+HTML

Since Apr 10Pushed 2mo ago3 watchersCompare

[ Source](https://github.com/howard-university-web-services/hu_general)[ Packagist](https://packagist.org/packages/howard/hu_general)[ Docs](https://github.com/howard-university-web-services/hu_general)[ RSS](/packages/howard-hu-general/feed)WikiDiscussions 8.x-1.x Synced 3w ago

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

Howard University General Theme (hu\_general)
=============================================

[](#howard-university-general-theme-hu_general)

A comprehensive Drupal theme built specifically for Howard University websites, providing a robust and customizable foundation for university departments, schools, and organizations.

Overview
--------

[](#overview)

The HU General theme is designed to maintain Howard University's brand identity while providing flexibility for different departments and schools. It includes extensive customization options, responsive design, and integration with various Drupal modules commonly used in university websites.

This theme is a child of the idfive Component Library D8 Theme, inheriting standard functionality while adding Howard University-specific features and customizations.

Features
--------

[](#features)

### Schema.org &amp; SEO Optimization (Enhanced in v11.1.3)

[](#schemaorg--seo-optimization-enhanced-in-v1113)

- **Rich Structured Data**: Comprehensive Schema.org markup for all content types with validation compliance
- **Educational Institution Context**: Proper academic and institutional content markup
- **Enhanced Search Results**: Rich snippets for articles, person profiles, and announcements
- **Improved Image Handling**: Optimized image processing for better Schema.org integration
- **Technical SEO**: Validated structured data with error prevention and enhanced preprocessing integration
- **Content Type Support**: Optimized markup for Articles, Pages, People, Resources, and Announcements

### Theme Variants

[](#theme-variants)

- **Default**: Standard Howard University styling
- **Clean &amp; Light**: Minimalist design with lighter color scheme
- **Classic Editorial**: Traditional academic styling optimized for content-heavy sites

### Header Configuration

[](#header-configuration)

- Light header menu option for better contrast
- Desktop hamburger menu support for simplified navigation
- Featured header link for promotional content
- Configurable search functionality

### Footer Customization

[](#footer-customization)

- Social media links (Twitter, Facebook, YouTube, Instagram)
- Complete address and contact information
- Institutional branding display

### School/Department Branding

[](#schooldepartment-branding)

- Parent school/college organization display
- Department-specific branding options
- Customizable institutional hierarchy

### Administrative Features

[](#administrative-features)

- Site-wide script injection for tracking codes
- Theme variant switcher for authenticated users
- Comprehensive caching support

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

[](#installation)

### Via Composer (Recommended)

[](#via-composer-recommended)

```
composer install howard/hu_general
```

### Manual Installation

[](#manual-installation)

1. Extract the theme to your Drupal themes directory: `/themes/contrib/hu_general`
2. Enable the theme in the Drupal admin interface
3. Configure theme settings at: `Administration > Appearance > Settings > HU General`

### Updates

[](#updates)

```
composer update howard/hu_general
```

Configuration
-------------

[](#configuration)

### Theme Settings

[](#theme-settings)

The theme provides extensive configuration options accessible through the Drupal admin interface at `/admin/appearance/settings/hu_general`:

#### Theme Variant Settings

[](#theme-variant-settings)

- Select from available theme variants
- Enable theme variant switcher for authenticated users

#### Howard School/Department Settings

[](#howard-schooldepartment-settings)

- **Parent School/College/Organization**: Add the parent school or college, for example "College of Arts and Sciences"
- **Parent School/College/Organization URL**: Add the URL to parent school or college, for example ""
- **Department/Site**: Add the department or site, for example "Department of English"

#### Howard Header Settings

[](#howard-header-settings)

- **Show light header menu**: Uses the light menu color scheme for the header menu
- **Show hamburger in Desktop**: Display hamburger menu on desktop for simplified navigation
- **Featured Header Link**: Show a featured link in the header with custom text and URL
- **Hide Search**: Hide search functionality if not needed

#### Howard Footer Settings

[](#howard-footer-settings)

- **Social Links**: Configure links for Twitter, Facebook, YouTube, and Instagram
- **Address Information**: Set up complete address and contact information for the footer

#### Admin Settings

[](#admin-settings)

- **Site-wide Scripts or Embeds**: Add custom JavaScript snippets, tracking codes, or other embeds (Admin only)

Template Files
--------------

[](#template-files)

The theme includes customized templates for:

### Layout Templates

[](#layout-templates)

- `html.html.twig` - Base HTML structure with theme variants and admin scripts
- `page.html.twig` - Page layout and regions with OpenID Connect integration
- `page--404.html.twig` - Custom 404 error page

### Content Templates

[](#content-templates)

- `node--hc-page.html.twig` - Standard page content
- `node--hc-article.html.twig` - Article content display
- `node--hc-person.html.twig` - Person/faculty profiles
- `node--hc-resource.html.twig` - Resource content
- `node--hc-standard-homepage.html.twig` - Homepage layout

### Navigation Templates

[](#navigation-templates)

- `menu--sidebar-navigation.html.twig` - Sidebar navigation
- `breadcrumb.html.twig` - Breadcrumb navigation
- `block--menu-block--sidebar-navigation.html.twig` - Menu block template

### Field Templates

[](#field-templates)

- `file-link.html.twig` - Custom file link display with media name support

### View Templates

[](#view-templates)

- `views-view.html.twig` - Views display
- `views-view-fields.html.twig` - Individual field display
- `views-view-unformatted.html.twig` - Unformatted view display

PHP Functions
-------------

[](#php-functions)

### Theme Hooks

[](#theme-hooks)

#### `hu_general_preprocess_html(&$variables)`

[](#hu_general_preprocess_htmlvariables)

Preprocesses HTML template variables, adding theme variant and admin scripts settings.

#### `hu_general_preprocess_page(&$variables)`

[](#hu_general_preprocess_pagevariables)

Preprocesses page template variables, extending theme settings, configuring hero images, and setting up OpenID Connect integration.

#### `hu_general_preprocess_node(&$variables)`

[](#hu_general_preprocess_nodevariables)

Preprocesses node template variables, making theme path available to node templates.

#### `hu_general_preprocess_file_link(&$variables)`

[](#hu_general_preprocess_file_linkvariables)

Customizes file link display, using media names when available and generating absolute URLs.

#### `hu_general_theme_suggestions_page_alter(&$suggestions, $variables, $hook)`

[](#hu_general_theme_suggestions_page_altersuggestions-variables-hook)

Adds custom page template suggestions, particularly for 404 error pages.

### Helper Functions

[](#helper-functions)

#### `_hu_general_extend_theme_variables(&$variables)`

[](#_hu_general_extend_theme_variablesvariables)

Extends template variables with all theme settings and handles proper caching dependencies.

Dependencies
------------

[](#dependencies)

### Required Modules

[](#required-modules)

- Core Drupal modules (minimal requirements)

### Optional Modules

[](#optional-modules)

- **OpenID Connect**: For SSO integration and login block functionality
- **Block**: For custom block placement
- **Views**: For content listing and display

Component Library
-----------------

[](#component-library)

The theme includes the idfive-component-library for consistent styling and components:

- Located in `/idfive-component-library/`
- Contains build tools and assets
- Provides standardized UI components

### Development Workflow

[](#development-workflow)

From the `idfive-component-library` directory:

1. **Setup Environment**:

    ```
    nvm use 10
    npm install
    ```
2. **Development Preview**:

    ```
    npm run fractal
    ```
3. **Production Build**:

    ```
    npm run build:production
    ```

Customization
-------------

[](#customization)

### Adding Custom Styles

[](#adding-custom-styles)

1. Modify files in `/idfive-component-library/src/`
2. Run the build process to compile assets
3. Custom styles are automatically loaded

### Creating Custom Templates

[](#creating-custom-templates)

1. Copy template files to your theme directory
2. Modify as needed
3. Clear Drupal cache

### Extending Theme Settings

[](#extending-theme-settings)

1. Modify `theme-settings.php` to add new form elements
2. Update `hu_general.theme` to handle new settings
3. Create corresponding template variables

File Structure
--------------

[](#file-structure)

```
hu_general/
├── composer.json                 # Composer dependencies
├── hu_general.info.yml          # Theme information
├── hu_general.libraries.yml     # Asset libraries
├── hu_general.theme             # Theme hooks and functions
├── theme-settings.php           # Theme settings form
├── config/                      # Configuration files
│   └── install/
│       └── hu_general.settings.yml
├── templates/                   # Twig templates
│   ├── block/
│   ├── fields/
│   ├── forms/
│   ├── layout/
│   ├── media/
│   ├── navigation/
│   ├── node/
│   ├── page/
│   └── views/
└── idfive-component-library/    # Component library
    ├── build/                   # Compiled assets
    ├── src/                     # Source files
    └── fractal/                 # Component documentation

```

Best Practices
--------------

[](#best-practices)

### Custom Child Themes

[](#custom-child-themes)

It is **HIGHLY recommended** that custom child themes not be made for Howard sites unless absolutely necessary. When creating a custom child theme, only override what is absolutely necessary in order to keep standard functionality across sites.

### Theme Customization

[](#theme-customization)

- Use the theme settings form for configuration rather than hardcoding values
- Leverage the component library for consistent styling
- Follow Drupal coding standards for any custom code
- Test across different browsers and devices

Support
-------

[](#support)

For support and questions about the HU General theme:

- Check the theme documentation
- Review the component library documentation
- Contact the Howard University web development team

Contributing
------------

[](#contributing)

When contributing to the theme:

1. Follow Drupal coding standards
2. Document all functions and significant code blocks
3. Test across different browsers and devices
4. Update documentation as needed

Documentation
-------------

[](#documentation)

- [DEVELOPER.md](DEVELOPER.md) - Developer documentation and customization guide
- [TEMPLATES.md](TEMPLATES.md) - Complete template documentation
- [SECURITY.md](SECURITY.md) - Security review and best practices

Resources
---------

[](#resources)

- [idfive Component Library D8 Theme](https://bitbucket.org/idfivellc/idfive-component-library-d8-theme)
- [Silc Framework](https://silc.io/)
- [idfive Component Library Source Files](https://bitbucket.org/idfivellc/idfive-component-library/src/master/)

License
-------

[](#license)

See LICENSE file for licensing information.

###  Health Score

54

—

FairBetter than 97% of packages

Maintenance86

Actively maintained with recent releases

Popularity18

Limited adoption so far

Community22

Small or concentrated contributor base

Maturity80

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 59.4% 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 ~13 days

Total

181

Last Release

68d ago

Major Versions

8.2.53 → 11.0.02025-05-02

### Community

Maintainers

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

![](https://www.gravatar.com/avatar/afd055eb77f1d251a8a0eb703682f7fa5a7297a8e4c474d666f2d04a063e4046?d=identicon)[anthony.neumann](/maintainers/anthony.neumann)

![](https://www.gravatar.com/avatar/64f90ad5084ea31d4ff3cbfca9cf9da40fb4cfc9bc8c2457a3105788dcbe7ec5?d=identicon)[brad.walker](/maintainers/brad.walker)

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

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

---

Top Contributors

[![drogers98](https://avatars.githubusercontent.com/u/3209424?v=4)](https://github.com/drogers98 "drogers98 (161 commits)")[![Skerins42](https://avatars.githubusercontent.com/u/105609564?v=4)](https://github.com/Skerins42 "Skerins42 (35 commits)")[![ben2collins](https://avatars.githubusercontent.com/u/8822812?v=4)](https://github.com/ben2collins "ben2collins (26 commits)")[![bradwalk](https://avatars.githubusercontent.com/u/91695974?v=4)](https://github.com/bradwalk "bradwalk (22 commits)")[![michaelcraven-idfive](https://avatars.githubusercontent.com/u/56048531?v=4)](https://github.com/michaelcraven-idfive "michaelcraven-idfive (12 commits)")[![anthonyneumann](https://avatars.githubusercontent.com/u/8773154?v=4)](https://github.com/anthonyneumann "anthonyneumann (3 commits)")[![ItsJustRBid5](https://avatars.githubusercontent.com/u/124620134?v=4)](https://github.com/ItsJustRBid5 "ItsJustRBid5 (3 commits)")[![JhamereWilsonHU](https://avatars.githubusercontent.com/u/122571047?v=4)](https://github.com/JhamereWilsonHU "JhamereWilsonHU (3 commits)")[![jpatronidfive](https://avatars.githubusercontent.com/u/124331041?v=4)](https://github.com/jpatronidfive "jpatronidfive (2 commits)")[![jeffpatronidfive](https://avatars.githubusercontent.com/u/216946856?v=4)](https://github.com/jeffpatronidfive "jeffpatronidfive (2 commits)")[![simonidfive](https://avatars.githubusercontent.com/u/111444670?v=4)](https://github.com/simonidfive "simonidfive (1 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")

---

Tags

drupal

### Embed Badge

![Health badge](/badges/howard-hu-general/health.svg)

```
[![Health](https://phpackages.com/badges/howard-hu-general/health.svg)](https://phpackages.com/packages/howard-hu-general)
```

###  Alternatives

[lullabot/amp

A set of useful classes and utilities to convert html to AMP html (See https://www.ampproject.org/)

3793.0M10](/packages/lullabot-amp)[drupal/core-composer-scaffold

A flexible Composer project scaffold builder.

5344.1M526](/packages/drupal-core-composer-scaffold)[mnsami/composer-custom-directory-installer

A composer plugin, to help install packages of different types in custom paths.

1415.3M59](/packages/mnsami-composer-custom-directory-installer)[drupal/core-project-message

Adds a message after Composer installation.

2124.0M193](/packages/drupal-core-project-message)[aleksip/plugin-data-transform

Data Transform Plugin for Pattern Lab PHP

34903.0k3](/packages/aleksip-plugin-data-transform)[acquia/drupal-recommended-settings

The composer plugin for adding drupal-recommended-settings for Acquia Cloud.

111.3M5](/packages/acquia-drupal-recommended-settings)

PHPackages © 2026

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