Download the PHP package gcworld/menu without Composer

On this page you can find all versions of the php package gcworld/menu. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package menu

GCWorld Menu

Packagist Packagist

Packagist PHP Packagist GitHub

GCWorld Menu is a PHP library for building Bootstrap 3 navigation bars. It supports left- and right-aligned links, standard and full-width dropdowns, notification menus, panel grids, and application-supplied HTML.

The library returns HTML strings; it does not load frontend assets or manage routing, authorization, or request handling.

Applications using a navbar brand overlay should also load css/menu.css for the shared overlay positioning. Visual styling remains the application's responsibility through the .gc-navbar-brand-overlay class.

Version

2.0.1

Requirements

Rendered dropdowns use Bootstrap 3 markup and classes from the Yamm mega-menu pattern. Interactive dropdowns and panel transitions require Bootstrap's JavaScript and jQuery. The consuming application is responsible for loading those browser dependencies and any icon styles used in menu content.

Installation

Install the package with Composer:

Basic usage

Create a menu, configure its brand, add elements, and render it:

renderElements() returns only the menu lists. Use it when the application provides its own surrounding navigation markup.

Dropdown panels

A standard dropdown contains panels, and each panel contains one or more blocks. Blocks can contain button-style links or application-provided HTML:

addDropDownWide() creates a full-width Yamm dropdown with the same panel/block structure. Its panels are hidden until one is selected with setDefault() or a loader link. Calling Link::setLoader() on a link inside a wide dropdown creates a jQuery-powered control that switches between panels in that dropdown. Loader links are not supported by standard dropdowns.

Blocks also support setHTML() and addHTML(). Setting HTML replaces the block's link output.

Notifications

Notification dropdowns accept either simple values or configured DropDownNoticeItem objects:

setEmptyHtml() controls the content shown when no items have been added.

Twig integration

Applications that own a Twig environment can register Menu's template namespace through the sidecar mapper:

This adds the package's twig/ directory under the @GCMenu namespace. Menu's public rendering methods use those templates internally; PHP classes prepare the render context and retain the existing object-building API.

Custom content and search

Use addDropDownHTML() for an HTML-backed dropdown and addHTML() for a raw top-level menu fragment.

The public googleSearchURL property enables the legacy Google site-search form. Alternatively, assign complete form markup to the public searchForm property.

Menu labels, URLs, icons, messages, custom fragments, and most other supplied values are inserted into markup without contextual escaping. Treat these APIs as trusted-content boundaries: validate URLs and escape or sanitize untrusted values before passing them to the library.

Local development

The supported development environment uses the public KongHack PHP 8.5 image:

The committed Compose configuration mounts only this repository. It does not expose host SSH keys or Composer credentials. Developers who require private Composer authentication can copy docker-compose.override.yml.example to the ignored docker-compose.override.yml; that override exposes credentials to container processes and should only be enabled when needed.

The quality suite includes syntax checks, PHPStan level 6 analysis, and PHPUnit. Run them independently with composer lint, composer phpstan, or composer test.

Releases

Releases use bare semantic-version tags such as 1.2.8. Before tagging a release:

  1. Add release notes under the matching version heading in CHANGELOG.md.
  2. Update VERSION and the value immediately below ### Version in this file.
  3. Push the release commit and matching tag.

GitHub Actions validates the release metadata and the complete PHP quality matrix before creating a GitHub Release from CHANGELOG.md. Release tags must not be moved or reused.

License

This package is proprietary software.


All versions of menu with dependencies

PHP Build Version
Package Version
Requires php Version >=8.4
twig/twig Version ^3.15
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package gcworld/menu contains the following files

Loading the files please wait ...