PHPackages                             webflorist/privacy-policy-laravel - 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. [Localization &amp; i18n](/categories/localization)
4. /
5. webflorist/privacy-policy-laravel

ActiveLibrary[Localization &amp; i18n](/categories/localization)

webflorist/privacy-policy-laravel
=================================

A Privacy Policy Package for Laravel Applications. Supports german and english languages.

v1.0.2(4y ago)02.3k↑100%MITBlade

Since Jan 3Pushed 4y ago1 watchersCompare

[ Source](https://github.com/webflorist/privacy-policy-laravel)[ Packagist](https://packagist.org/packages/webflorist/privacy-policy-laravel)[ Docs](https://github.com/webflorist/privacy-policy-laravel#readme)[ RSS](/packages/webflorist-privacy-policy-laravel/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (5)Used By (0)

A Privacy Policy Package for Laravel Applications
=================================================

[](#a-privacy-policy-package-for-laravel-applications)

[![Build Status](https://camo.githubusercontent.com/f2883786192a8428128dabe7ae1ea9c3fee04c06958b8ca1e34ee449c4a07511/68747470733a2f2f6170702e7472617669732d63692e636f6d2f776562666c6f726973742f707269766163792d706f6c6963792d6c61726176656c2e7376673f6272616e63683d6d61696e)](https://app.travis-ci.com/github/webflorist/privacy-policy-laravel)[![Latest Stable Version](https://camo.githubusercontent.com/e7d7dc391725840cfe1922b9bc60026b5e2c5fe49d7ce945a5d6c57390b636cc/68747470733a2f2f706f7365722e707567782e6f72672f776562666c6f726973742f707269766163792d706f6c6963792d6c61726176656c2f76)](https://packagist.org/packages/webflorist/privacy-policy-laravel)[![License](https://camo.githubusercontent.com/977197064a21a63674a1c005375c8b1a8746a443cfa9d86dde9d184a6fd8491d/68747470733a2f2f706f7365722e707567782e6f72672f776562666c6f726973742f707269766163792d706f6c6963792d6c61726176656c2f6c6963656e7365)](https://github.com/webflorist/privacy-policy-laravel/blob/main/LICENSE.md)

This is a **Laravel** package providing an **open source** privacy policy available in **german** and **english**.

Table of Contents
-----------------

[](#table-of-contents)

- [Demo](#demo)
- [Features](#features)
- [Requirements](#requirements)
- [Installation](#installation)
- [Configuration](#configuration)
    - [`data-controller`: array (mandatory)](#data-controller-array-mandatory)
    - [`singular`: boolean (mandatory)](#singular-boolean-mandatory)
    - [`data-processing`: array (optional)](#data-processing-array-optional)
    - [`cookies`: array|false (mandatory)](#cookies-arrayfalse-mandatory)
    - [`processors`: array (optional)](#processors-array-optional)
- [Component Slots](#component-slots)
- [Disclaimer](#disclaimer)
- [License](#license)

Demo
----

[](#demo)

An demo application using the sister-package [webflorist/privacy-policy-vue](https://github.com/webflorist/privacy-policy-vue) with the same texts is avaliable at:

Features
--------

[](#features)

- **Languages**
    Currently the package includes texts in **german** and **english** language.
- **Singular/Plural**
    You can choose between a singular or plural point of view.
    (e.g. `My website...` vs `Our website...`)
- **Included Texts**

    - A general **intro text**
    - Listing of **GDPR rights**
    - Introduction of **data controller**
    - General **data security** text (SSL, etc.)
    - **Cookies** information
    - Information on **data processing** of third party data processors:
        - Webhosting
        - Web analytics
        - Interactive maps
        - Sending of emails (e.g. contact forms)
    - Disclaimer regarding **outgoing links**
    - Listing of all used **processors**

Requirements
------------

[](#requirements)

This package supports [`Laravel`](https://laravel.com/) from version 5.5 up until 8.x.

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

[](#installation)

1. Require the package via composer:
    `composer require webflorist/privacy-policy-laravel`
2. Publish config:
    `php artisan vendor:publish --provider="Webflorist\PrivacyPolicy\PrivacyPolicyServiceProvider"`
3. Configure your privacy policy with the `privacy-policy.php` file in Laravel's `config` folder. (see below for details).
4. Include the privacy policy component in your view:

```
    @component('webflorist-privacy-policy::privacy-policy')
    @endcomponent
```

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

[](#configuration)

### `data-controller`: array (mandatory)

[](#data-controller-array-mandatory)

Contact info for the data controller. The array can have the following elements:

```
[
	'organisation' => 'Acme Corporation',
	'name' => 'John Doe',
	'address' => 'Acme Street 1, 123456 Acme City, USA',
	'email' => 'privacy@example.com',
	'phone' => '+1 555-0123',
];
```

### `singular`: boolean (mandatory)

[](#singular-boolean-mandatory)

Set to `true` for singular viewpoint (e.g. "My website...").

Set to `false` for plural viewpoint (e.g. "Our website...").

### `data-processing`: array (optional)

[](#data-processing-array-optional)

The data processings used by your site. Each process must be stated as two-dimenstional array with the type of process as it's key and it's properties stated as a value-array.

Supported types of processes are:

- `webhosting`
- `analytics`
- `maps`
- `send_emails`

The properties of a process can be:

- `processor`: String (mandatory)
    The key of the processor providing this processing (either one of the [included ones](https://github.com/webflorist/privacy-policy-text/blob/main/src/processors.php) or one stated via the [processors property](#processors-array-optional))
- `service`: String (optional)
    Name of the service providing this processing (e.g. `Google Analytics` or `Google Maps`)
- `data_categories`: Array (mandatory)
    Array of data categories processed by this process. Supported values are:
    - `inventory_data`
    - `usage_data`
    - `geo_data`
    - `usage_statistics`
    - `contract_data`
    - `payment_data`

Here is an example for a full `data_processing` config:

```
[
	'webhosting' => [
		'processor' => ['netlify', 'storyblok'],
		'data_categories' => ['usage_data'],
	],
	'analytics' => [
		'processor' => 'google_eu',
		'service' => 'Google Analytics',
		'data_categories' => ['usage_data', 'usage_statistics'],
	],
	'maps' => [
		'processor' => 'google_usa',
		'service' => 'Google Maps',
		'data_categories' => ['usage_data', 'geo_data'],
	],
	'send_emails' => [
		'processor' => 'twilio_eu',
		'service' => 'Twilio Sendgrid',
		'data_categories' => ['usage_data', 'inventory_data'],
	],
];
```

### `cookies`: array|false (mandatory)

[](#cookies-arrayfalse-mandatory)

This config describes the cookies used by your site.

If your site uses no cookies at all, simply set this to `false`.

If not, divide the used cookies into first party cookies and third party ones, and list them as sub-arrays of the `first_party` and `third_party` arrays of the `cookies` config.

Each cookie is described as an array with the following possible properties:

- `name`: String (mandatory)
    The name of the cookie
- `purpose`: String (mandatory)
    The key of the cookie purpose. Can be one of the following:
    - `session`: Session cookie
    - `xsrf`: Cookie to prevent "Cross-Site Request Forgery" attacks
    - `hide_alert`: Cookie to prevent displaying the cookie dialog again after hiding it
    - `all_choices`: Cookie storing the choices regarding various cookies displayed in the cookie dialog
    - `analytics_choice`: Cookie storing the choice regarding the usage of web analytics in the cookie dialog
    - `maps_choice`: Cookie storing the choice regarding the usage of interactive maps
    - `analytics_third_party`: Cookies written by the web analytics tool
    - `maps_third_party`: Cookies set on displaying interactive maps.
- `written_on`: String (mandatory)
    When the cookie is created. Can be one of the following:
    - `every_visit`: Written on every visit
    - `hide_alert`: Written on hiding the cookie dialog
    - `maps`: Written on acknowledging the usage of interactive maps
    - `accept_cookies`: Written on accepting the corresponding cookies
- `duration`: String (mandatory)
    The duration of the cookie. Can be one of the following:
    - `end_of_session`
    - `1_year`
    - `2_years`
    - `24_hours`
    - `1_minute`
    - `various`
- `processor`: String (mandatory with third party cookies) The key of the processor providing this processing (either one of the [included ones](https://github.com/webflorist/privacy-policy-text/blob/main/src/processors.php) or one stated via the [processors property](#processors-array-optional))

Here is an example of the cookie config:

```
[
	'first_party' => [
		[
			'name' => 'session',
			'purpose' => 'session',
			'written_on' => 'every_visit',
			'duration' => 'end_of_session',
		],
	],
	'third_party' => [
		[
			'name' => '_ga, _gat, _gid',
			'purpose' => 'analytics_third_party',
			'written_on' => 'accept_cookies',
			'duration' => 'various',
			'processor' => 'google_eu',
			'service' => 'Google Analytics',
		],
	],
];
```

### `processors`: array (optional)

[](#processors-array-optional)

Definition of processors stated with [data processings](#data-processing-array-optional) or [cookies](#cookies-arrayfalse-mandatory).

Several processors are [already included](https://github.com/webflorist/privacy-policy-text/blob/main/src/processors.php).

State your own ones in the processors config in an array with the shorthand-key of the processor as the key and it's info as an array with the following elements:

- `name` String (mandatory)
    Company name
- `address` String (mandatory)
    Full address of the company
- `privacy_policy` String (mandatory) Link to the processors privacy policy
- `privacy_shield` String (optional)
    Link to the [privacy shield](https://www.privacyshield.gov) entry of the processor.

Here is and example:

```
[
	'acme_corp' => [
		'name' => 'Acme Corporation',
		'address' => 'Acme Street 1, 123456 Acme City, USA',
		'privacy_policy' => 'https://www.example.com/privacy',
		'privacy_shield' =>
			'https://www.privacyshield.gov/participant?id=a2zt0000000TOWQAA4',
	],
];
```

Component Slots
---------------

[](#component-slots)

The `webflorist-privacy-policy::privacy-policy` component provides the following named slots to insert custom text on various positions:

Slot NameUsageafter\_intro`@slot('after_intro') Custom Text @endslot`gdpr\_rights\_start`@slot('gdpr_rights_start') Custom Text @endslot`gdpr\_rights\_end`@slot('gdpr_rights_end') Custom Text @endslot`data\_controller\_start`@slot('data_controller_start') Custom Text @endslot`data\_controller\_end`@slot('data_controller_end') Custom Text @endslot`security\_start`@slot('security_start') Custom Text @endslot`security\_end`@slot('security_end') Custom Text @endslot`cookies\_start`@slot('cookies_start') Custom Text @endslot`cookies\_end`@slot('cookies_end') Custom Text @endslot`data\_processing\_start`@slot('data_processing_start') Custom Text @endslot`data\_processing\_webhosting\_start`@slot('data_processing_webhosting_start') Custom Text @endslot`data\_processing\_webhosting\_end`@slot('data_processing_webhosting_end') Custom Text @endslot`data\_processing\_analytics\_start`@slot('data_processing_analytics_start') Custom Text @endslot`data\_processing\_analytics\_end`@slot('data_processing_analytics_end') Custom Text @endslot`data\_processing\_maps\_start`@slot('data_processing_maps_start') Custom Text @endslot`data\_processing\_maps\_end`@slot('data_processing_maps_end') Custom Text @endslot`data\_processing\_send\_emails\_start`@slot('data_processing_send_emails_start') Custom Text @endslot`data\_processing\_send\_emails\_end`@slot('data_processing_send_emails_end') Custom Text @endslot`data\_processing\_end`@slot('data_processing_end') Custom Text @endslot`outgoing\_links\_start`@slot('outgoing_links_start') Custom Text @endslot`outgoing\_links\_end`@slot('outgoing_links_end') Custom Text @endslot`processor\_list\_start`@slot('processor_list_start') Custom Text @endslot`processor\_list\_end`@slot('processor_list_end') Custom Text @endslot`Disclaimer
----------

[](#disclaimer)

The included text *should* be suitable for a GDPR-compliant website.

**I however do not take any responsibility whatsowever for that.**

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](https://github.com/webflorist/privacy-policy-laravel/blob/main/LICENSE.md).

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92.3% 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 ~6 days

Total

3

Last Release

1579d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/9c2d4efd8d86101511e621cdfcc7178ba05c4854e4c4176efc0543931075fe54?d=identicon)[codeflorist](/maintainers/codeflorist)

---

Top Contributors

[![codeflorist](https://avatars.githubusercontent.com/u/41453547?v=4)](https://github.com/codeflorist "codeflorist (12 commits)")[![semantic-release-bot](https://avatars.githubusercontent.com/u/32174276?v=4)](https://github.com/semantic-release-bot "semantic-release-bot (1 commits)")

---

Tags

laravellocalizationenglishgdprprivacylegaldata protectionPolicyprivacy policygerman

### Embed Badge

![Health badge](/badges/webflorist-privacy-policy-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/webflorist-privacy-policy-laravel/health.svg)](https://phpackages.com/packages/webflorist-privacy-policy-laravel)
```

###  Alternatives

[mcamara/laravel-localization

Easy localization for Laravel

3.5k9.1M112](/packages/mcamara-laravel-localization)[josiasmontag/laravel-redis-mock

This Laravel package provides a Redis mock for your tests

471.8M16](/packages/josiasmontag-laravel-redis-mock)[martin-schenk/laravel-cookie-consent

GDPR-compliant cookie consent system with minimal dependencies for Laravel 11 and 12

101.3k](/packages/martin-schenk-laravel-cookie-consent)[afrizalmy/laraindo

Package Laravel 9 sederhana untuk format indonesia terdiri dari Localization, Rupiah format, Date format

215.3k3](/packages/afrizalmy-laraindo)

PHPackages © 2026

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