PHPackages                             artisanpack-ui/security - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. artisanpack-ui/security

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

artisanpack-ui/security
=======================

Provides escaping and sanitation functions to provide security for Digital Shopfront CMS.

1.0.3(1y ago)0861↑275%1[12 issues](https://github.com/ArtisanPack-UI/security/issues)[1 PRs](https://github.com/ArtisanPack-UI/security/pulls)5MITPHPPHP ^8.2CI passing

Since Apr 17Pushed 1mo agoCompare

[ Source](https://github.com/ArtisanPack-UI/security)[ Packagist](https://packagist.org/packages/artisanpack-ui/security)[ RSS](/packages/artisanpack-ui-security/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (5)Versions (9)Used By (5)

ArtisanPack UI Security
=======================

[](#artisanpack-ui-security)

[![Latest Version on Packagist](https://camo.githubusercontent.com/795b93653cbe1a0f763aa582139d84ec517c557680ae5aa122f0b7cd8ed69d72/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6172746973616e7061636b75692f73656375726974792e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/artisanpackui/security)[![Total Downloads](https://camo.githubusercontent.com/e289c614b4a09b968feba006b72eed0e1a1b2430994c3353903ac5191390ac72/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6172746973616e7061636b75692f73656375726974792e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/artisanpackui/security)

A comprehensive security package for Laravel applications, specifically designed for the Digital Shopfront CMS. This package provides essential data sanitization and output escaping functions to protect against common web vulnerabilities like XSS attacks, SQL injection, and data corruption.

Features
--------

[](#features)

- **Comprehensive Sanitization**: Clean user input with specialized functions for emails, URLs, text, dates, and more
- **Context-Aware Escaping**: Safely escape output for HTML, attributes, URLs, JavaScript, and CSS contexts
- **HTML Filtering**: WordPress-style HTML filtering with `kses()` function
- **Laravel Integration**: Facade and global helper functions for easy usage
- **Battle-Tested**: Built on proven libraries like Laminas Escaper
- **Full Test Coverage**: Extensively tested for reliability

Quick Start
-----------

[](#quick-start)

### Installation

[](#installation)

Install the package via Composer:

```
composer require ArtisanPackUI/security
```

### Basic Usage

[](#basic-usage)

Use the Security facade:

```
use ArtisanPackUI\Security\Facades\Security;

// Sanitize input
$cleanEmail = Security::sanitizeEmail($userEmail);

// Escape output
echo Security::escHtml($userContent);
```

Or use global helper functions:

```
// Sanitize input
$cleanEmail = sanitizeEmail($userEmail);

// Escape output
echo escHtml($userContent);
```

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

[](#documentation)

📚 **[Complete Documentation](docs/home.md)**

- **[Getting Started](docs/getting-started.md)** - Installation, setup, and basic usage
- **[API Reference](docs/api-reference.md)** - Complete function reference with examples
- **[Security Guidelines](docs/security-guidelines.md)** - Best practices and security considerations
- **[AI Guidelines](docs/ai-guidelines.md)** - Guidelines for AI code generation
- **[Contributing](docs/contributing.md)** - How to contribute to this project
- **[Changelog](docs/changelog.md)** - Version history and changes

Available Functions
-------------------

[](#available-functions)

### Sanitization Functions

[](#sanitization-functions)

- `sanitizeEmail()` - Clean email addresses
- `sanitizeUrl()` - Sanitize URLs
- `sanitizeText()` - Remove HTML and clean text
- `sanitizeInt()` - Convert to safe integers
- `sanitizeArray()` - Recursively clean arrays
- And more...

### Escaping Functions

[](#escaping-functions)

- `escHtml()` - HTML context escaping
- `escAttr()` - HTML attribute escaping
- `escUrl()` - URL escaping
- `escJs()` - JavaScript context escaping
- `escCss()` - CSS context escaping

### HTML Filtering

[](#html-filtering)

- `kses()` - WordPress-style HTML filtering

Security
--------

[](#security)

If you discover any security vulnerabilities, please follow our [security reporting guidelines](docs/contributing.md#security-contributions). Do not open public issues for security vulnerabilities.

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

[](#contributing)

We welcome contributions! Please see our [Contributing Guide](docs/contributing.md) for details on how to contribute to this project.

About Digital Shopfront CMS
---------------------------

[](#about-digital-shopfront-cms)

This package is part of the ArtisanPack UI ecosystem for [Digital Shopfront CMS](https://gitlab.com/jacob-martella-web-design/digital-shopfront/digital-shopfront-core/digital-shopfront). Learn more about the full CMS in our [main documentation](https://gitlab.com/jacob-martella-web-design/digital-shopfront/digital-shopfront-core/digital-shopfront/-/wikis/home).

License
-------

[](#license)

This project is open-sourced software licensed under the [MIT license](LICENSE).

###  Health Score

42

—

FairBetter than 90% of packages

Maintenance72

Regular maintenance activity

Popularity19

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~9 days

Total

4

Last Release

369d ago

### Community

Maintainers

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

---

Top Contributors

[![ViewFromTheBox](https://avatars.githubusercontent.com/u/8247489?v=4)](https://github.com/ViewFromTheBox "ViewFromTheBox (26 commits)")

---

Tags

authenticationauthorizationcsrflaravellaravel-packagephpsecurity

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/artisanpack-ui-security/health.svg)

```
[![Health](https://phpackages.com/badges/artisanpack-ui-security/health.svg)](https://phpackages.com/packages/artisanpack-ui-security)
```

###  Alternatives

[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[illuminate/auth

The Illuminate Auth package.

9327.3M1.0k](/packages/illuminate-auth)[olssonm/l5-very-basic-auth

Laravel stateless HTTP basic auth without the need for a database

1662.5M1](/packages/olssonm-l5-very-basic-auth)[stechstudio/laravel-jwt

Helper package that makes it easy to generate, consume, and protect routes with JWT tokens in Laravel

126117.6k](/packages/stechstudio-laravel-jwt)[scaler-tech/laravel-saml2

SAML2 Service Provider integration for Laravel applications, based on OneLogin toolkit

2737.5k](/packages/scaler-tech-laravel-saml2)[truckersmp/steam-socialite

Laravel Socialite provider for Steam OpenID.

1516.7k](/packages/truckersmp-steam-socialite)

PHPackages © 2026

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