# Progressive Web App

By default, Nectar is a Progressive Web App (PWA) as it includes the main ingredients — the Web App Manifest and the Service Worker.

## Web App Manifest

Web App Manifest provides information about a web application, generally named as `manifest.json` and located in the root directory of the project.

This file is necessary for the web app to be able to install on the user home screen.

This file contains information such as app name, description, theme colors, launch icons, app shortcuts etc.

The Web App Manifest is located as `manifest.json`

You can learn more about Web App Manifest at <https://developer.mozilla.org/en-US/docs/Web/Manifest>

## Service Worker

Service Worker essentially acts as a proxy server that sits between the web app, the web browser, and the network connection.

Service Worker enables to create offline experiences, handle push notifications, sync data in background and so on.

The Service Worker is located as `service-worker.js`

This Service Worker contains the code for data caching providing offline experience and handling local push notifications.

You can learn more about Service Workers at <https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API>

This Service Worker also includes Workbox library. You can learn more about Workbox at <https://developer.chrome.com/docs/workbox>

{% hint style="info" %}
To create Splash Screens for iOS PWAs, you should use the service — <https://progressier.com/pwa-icons-and-ios-splash-screen-generator>
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://pmsgz.gitbook.io/nectar/publishing/progressive-web-app.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
