# PWARegistry > The open registry for Progressive Web Apps. Open infrastructure for discovering, validating, normalizing, and maintaining high-quality Progressive Web Apps. Submit a domain; PWARegistry reads existing web standards and keeps the registry current. PWARegistry does not invent metadata. The website is the source of truth. Check and Submit share one validation engine. Results are PASS, PASS WITH WARNINGS, or FAIL — never a public score. Static /registry/v1/ JSON is canonical. /api/v1/ is a convenience layer over the same store. ## Docs - [Introduction](https://pwaregistry.org/docs): PWARegistry is the open registry for Progressive Web Apps. It discovers, validates, normalizes, and maintains high-quality PWAs using existing web standards. - [How PWARegistry Works](https://pwaregistry.org/docs/how-it-works): How PWARegistry turns a domain into a normalized registry record using the Web App Manifest and related web standards. - [Submit a PWA](https://pwaregistry.org/docs/submit): How to submit a Progressive Web App to PWARegistry. Enter a domain. Metadata is discovered from existing standards. - [Validation](https://pwaregistry.org/docs/validation): How PWARegistry validates Progressive Web Apps. Results are PASS, PASS WITH WARNINGS, or FAIL — never a public score. - [Requirements](https://pwaregistry.org/docs/validation/requirements): Fundamental PWARegistry validation requirements: HTTPS, reachable site, valid Web App Manifest, identity, start URL, scope, display, icons. - [Warnings](https://pwaregistry.org/docs/validation/warnings): Quality warnings in PWARegistry: 192/512 icons, maskable icons, narrow and wide screenshots, description, theme color, service worker. - [Troubleshooting](https://pwaregistry.org/docs/validation/troubleshooting): How to fix common PWARegistry validation failures for Progressive Web Apps. - [Normalization](https://pwaregistry.org/docs/normalization): How PWARegistry normalizes Web App Manifest metadata so consumers do not reinvent interpretation rules. - [Names & Descriptions](https://pwaregistry.org/docs/normalization/names): Precedence rules for PWA name, short_name, and description in PWARegistry. - [Icons](https://pwaregistry.org/docs/normalization/icons): How PWARegistry selects the primary app icon and classifies any, maskable, and monochrome purposes. - [Screenshots](https://pwaregistry.org/docs/normalization/screenshots): How PWARegistry handles narrow, wide, and unspecified Web App Manifest screenshots. - [Categories](https://pwaregistry.org/docs/normalization/categories): How PWARegistry reads Web App Manifest categories without inventing them. - [Other Metadata](https://pwaregistry.org/docs/normalization/other): How PWARegistry normalizes display, theme color, shortcuts, share_target, and other Web App Manifest members. - [Health & Status](https://pwaregistry.org/docs/health): How PWARegistry automatically maintains ACTIVE, DEGRADED, and REMOVED statuses without manual review. - [Registry Format](https://pwaregistry.org/docs/registry-format): PWARegistry v1 machine-readable format: index, revision, changes, and individual application records. - [Using PWARegistry](https://pwaregistry.org/docs/using): PWARegistry is a public source of normalized PWA data. Retrieve it and use it in a store, catalog, launcher, search tool, or any other project. No account. No API key. - [Quick Start](https://pwaregistry.org/docs/using/getting-started): Fetch one Progressive Web App from PWARegistry. No API key. No account. - [Where the Data Lives](https://pwaregistry.org/docs/using/data): Static /registry/v1/ files are the canonical source. /api/v1/ is a convenience layer over the same store. - [Get One PWA](https://pwaregistry.org/docs/using/app): Retrieve one normalized PWA record by hostname. Same payload from the static file and the API. - [Get All PWAs](https://pwaregistry.org/docs/using/all): How to list every PWA, or every active PWA, without downloading full records up front. - [Categories](https://pwaregistry.org/docs/using/categories): Filter PWAs by Web App Manifest categories. PWARegistry does not invent tags. - [Search](https://pwaregistry.org/docs/using/search): Simple read-only search over app name and domain. Not a ranking engine. - [Capabilities](https://pwaregistry.org/docs/using/capabilities): Factual capability flags derived from the Web App Manifest and related standards. No platform guesses. - [Revisions & Changes](https://pwaregistry.org/docs/using/changes): A revision is a number that changes whenever the registry changes. Fetch only what changed. - [Syncing a Large Registry](https://pwaregistry.org/docs/using/syncing): Initial sync, store the revision, then fetch only changes. Do not re-download the registry on every page view. - [Icons](https://pwaregistry.org/docs/using/icons): Use icons.primary for a normal listing. Maskable, monochrome, and all are already classified. - [Screenshots](https://pwaregistry.org/docs/using/screenshots): Use screenshots.narrow on mobile and screenshots.wide on desktop. Do not mix them. PWARegistry already split the sets. - [Status Handling](https://pwaregistry.org/docs/using/status): ACTIVE is healthy, DEGRADED has a problem, REMOVED should not be presented as active. Your product chooses the exact presentation. - [Caching](https://pwaregistry.org/docs/using/caching): ETags, Cache-Control, Last-Modified, and CDN-friendly static registry files. - [Example: PWA Store](https://pwaregistry.org/docs/using/examples): Build a PWA store with PWARegistry. The registry provides identity, icons, screenshots, and status. Your store provides branding, ranking, and reviews. - [Example: Category Catalog](https://pwaregistry.org/docs/using/catalog): Build a Games PWA catalog: fetch category=games and status=active, then render name, icon, description, and the correct screenshots. - [Errors](https://pwaregistry.org/docs/using/errors): HTTP status codes and JSON error payloads for the registry and the read-only API. - [API / Registry Reference](https://pwaregistry.org/docs/using/reference): Every static path and read-only API endpoint: URL, method, purpose, parameters, examples, caching, and errors. - [About](https://pwaregistry.org/docs/about): About PWARegistry: open infrastructure for Progressive Web Apps, privacy, security, and project status. ## Registry - [Metadata](https://pwaregistry.org/registry/v1/meta.json) - [Index](https://pwaregistry.org/registry/v1/index.json) - [Categories](https://pwaregistry.org/registry/v1/categories.json) - [Changes](https://pwaregistry.org/registry/v1/changes.json) - [Search](https://pwaregistry.org/registry/v1/search.json?q=) - [Read-only API](https://pwaregistry.org/api/v1/meta) - [Using PWARegistry](https://pwaregistry.org/docs/using) - [Registry format](https://pwaregistry.org/docs/registry-format) ## Optional - [Full documentation](https://pwaregistry.org/llms-full.txt)