# Overview

PushPushGo enables collecting subscribers, sending push notifications and many more for websites in multiple browsers:

* Chromium-based browsers like Chrome or Opera,
* Safari (since version 16),
* Edge,
* Firefox,
* any other browser that uses [PushAPI](https://www.w3.org/TR/push-api/) and service workers.

{% hint style="info" %}
Safari from version 16.4 supports iOS push notifications. [See requirements](https://docs.pushpushgo.company/web-push/safari-support).
{% endhint %}

To use our application functionalities, the following are needed:

* PushPushGo service worker for registering subscribers and delivering push notifications,
* PushPushGo integration script or SDK for managing subscriptions and collecting subscribers' data.

Depending on the project's characteristic, there are two possible integration strategies - Integration with own domain or Basic integration.

### Integration with own domain

Integration with own domain requires:

* placing service worker file on the server,
* placing integration script in the source code or implementing SDK,
* having a website with an SSL certificate.

This strategy allows:

* to subscribe with just one click through browser's default form,
* to export the collected subscriber database.

{% hint style="warning" %}
All Safari browser versions require user gesture (click on desktop, tap on mobile device)  to display subscription prompt.
{% endhint %}

### Basic integration

Basic integration only requires placing integration script in the source code while service worker is placed on PushPushGo server on a dedicated subdomain, e.g. www-website-address-com.pushpushgo.com.

This strategy is suited for:

* websites without SSL certificate,
* websites built with marketing tools.

However, there are some limitations:

* users have to subscribe in two steps: first step is accepting custom subscription form, then accepting browser's default form in a confirm window,
* subscriber database export is not available since service worker is not registered on owned domain.
