# Support

The `mantle-framework/support` package provides a set of classes and traits that can be used to extend the functionality of your classes/application. This package doesn't require the rest of the framework in anyway and is a great addition to any WordPress project.

## Installation[​](#installation "Direct link to Installation")

You can install the package via Composer:

```bash
composer require mantle-framework/support

```

## Features[​](#features "Direct link to Features")

The following are features included in the `mantle-framework/support` package:

## [📄️<!-- --> <!-- -->Classname](/docs/features/support/classname.md)

[A classname helper function for generating CSS class names based on various conditions and inputs.](/docs/features/support/classname.md)

## [📄️<!-- --> <!-- -->Collections](/docs/features/support/collections.md)

[{/ Collection methods should be added in alphabetical order /}](/docs/features/support/collections.md)

## [📄️<!-- --> <!-- -->Conditionable](/docs/features/support/conditionable.md)

[Conditionable is a trait that provides a way to conditionally call a closure](/docs/features/support/conditionable.md)

## [📄️<!-- --> <!-- -->Helpers](/docs/features/support/helpers.md)

[General helpers for development.](/docs/features/support/helpers.md)

## [📄️<!-- --> <!-- -->Hookable](/docs/features/support/hookable.md)

[Hookable is a trait that will automatically register methods on your class with](/docs/features/support/hookable.md)

## [📄️<!-- --> <!-- -->HTML Manipulation](/docs/features/support/html.md)

[The HTML class provides methods to query, manipulate, and assert against HTML](/docs/features/support/html.md)

## [📄️<!-- --> <!-- -->Macroable](/docs/features/support/macroable.md)

[Macros allow you to add methods to classes from outside the class. This is](/docs/features/support/macroable.md)

## [📄️<!-- --> <!-- -->Mixed Options/Meta Data](/docs/features/support/mixed-data.md)

[Handle mixed data types in a type-safe manner for options and object metadata.](/docs/features/support/mixed-data.md)

## [📄️<!-- --> <!-- -->Pipeline](/docs/features/support/pipeline.md)

[Execute a series of tasks in a specific order using the pipeline pattern.](/docs/features/support/pipeline.md)

## [📄️<!-- --> <!-- -->Singleton](/docs/features/support/singleton.md)

[A singleton is a class that can only be instantiated once. It is often used to](/docs/features/support/singleton.md)

## [📄️<!-- --> <!-- -->Stringable](/docs/features/support/stringable.md)

[The Stringable class exists in the Mantle\Support namespace and is used to create a stringable object from a string or a stringable object.](/docs/features/support/stringable.md)

## [📄️<!-- --> <!-- -->URI Manipulation](/docs/features/support/uri.md)

[Manipulate and work with URIs using Mantle's fluent URI class and helpers](/docs/features/support/uri.md)
