Skip to main content
skill CX Codex

progressive-web-app · aj-geddes — Claude Code skill: build installable PWAs

Guides your agent through building a progressive web app: manifest, service worker, offline mode and installability.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add aj-geddes/useful-ai-prompts --skill progressive-web-app -a claude-code
Open on GitHub

What progressive-web-app does

This skill walks the agent through PWA work: a web app manifest, a service worker, offline support with IndexedDB, an install prompt and push notifications. Useful when a site should behave like an app — launch from the home screen, keep working on a bad connection.

Five reference guides sit in the references/ directory: web-app-manifest.md, service-worker-implementation.md, install-prompt-and-app-installation.md, offline-support-with-indexeddb.md and push-notifications.md. The quick start opens with public/manifest.json, covering name, short_name, start_url, scope, display, theme colors and 192x192 plus 512x512 icons.

The manifest and service worker have to live at paths your server actually serves. In the example start_url and scope are both /, so a project hosted in a subdirectory needs those values changed. Worth checking your routing before the agent starts writing code.

What it helps with

  • build a web app manifest with icons and theme colors
  • set up a service worker and asset caching
  • add offline mode backed by IndexedDB
  • make the app installable from the home screen
  • wire up push notifications

Example prompts for the agent

  • Build a PWA for my project: manifest, service worker and offline mode
  • Add home screen installation and check my manifest
  • Configure service worker caching so pages open without a network

How to install progressive-web-app

1Skills CLI (Vercel)

npx skills add aj-geddes/useful-ai-prompts --skill progressive-web-app -a claude-code

2Manually: put the files in place

~/.claude/skills/progressive-web-app/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/progressive-web-app/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about progressive-web-app

How do I install progressive-web-app in Claude?

Run npx skills add aj-geddes/useful-ai-prompts --skill progressive-web-app -a claude-code. The skill file then lands at ~/.claude/skills/progressive-web-app/SKILL.md.

What does the progressive-web-app skill do?

It gives the agent instructions for building a progressive web app: manifest, service worker, offline support with IndexedDB, installation and push notifications.

Where are the detailed PWA guides?

In the references/ directory inside the skill: separate files for the manifest, service worker, installation, IndexedDB offline support and push notifications.

Source text

SKILL.md · MIT
---
name: progressive-web-app
description: >
  Build progressive web apps using service workers, web manifest, offline
  support, and installability. Use when creating app-like web experiences.
---

# Progressive Web App

## Table of Contents

- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)

## Overview

Build progressive web applications with offline support, installability, service workers, and web app manifests to deliver app-like experiences in the browser.

## When to Use

- App-like web experiences
- Offline functionality needed
- Mobile installation required
- Push notifications
- Fast loading experiences

## Quick Start

Minimal working example:

```json
// public/manifest.json
{
  "name": "My Awesome App",
  "short_name": "AwesomeApp",
  "description": "A progressive web application",
  "start_url": "/",
  "scope": "/",
  "display": "standalone",
  "orientation": "portrait-primary",
  "background_color": "#ffffff",
  "theme_color": "#007bff",
  "icons": [
    {
      "src": "/images/icon-192.png",
      "sizes": "192x192",
      "type": "image/png",
      "purpose": "any"
    },
    {
      "src": "/images/icon-512.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "any"
    },
    {
// ... (see reference guides for full implementation)
```

## Reference Guides

Detailed implementations in the `references/` directory:

| Guide | Contents |
|---|---|
| [Web App Manifest](references/web-app-manifest.md) | Web App Manifest |
| [Service Worker Implementation](references/service-worker-implementation.md) | Service Worker Implementation |
| [Install Prompt and App Installation](references/install-prompt-and-app-installation.md) | Install Prompt and App Installation |
| [Offline Support with IndexedDB](references/offline-support-with-indexeddb.md) | Offline Support with IndexedDB |
| [Push Notifications](references/push-notifications.md) | Push Notifications |

## Best Practices

### ✅ DO

- Follow established patterns and conventions
- Write clean, maintainable code
- Add appropriate documentation
- Test thoroughly before deploying

### ❌ DON'T

- Skip testing or validation
- Ignore error handling
- Hard-code configuration values

© aj-geddes · MIT · aj-geddes/useful-ai-prompts

Similar skills

Everything for Frontend and UI →

progressive-web-app by other authors comes first.

From the same set118

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor