Skip to content

vite-pwa/astro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

33e09b9 ยท Sep 2, 2024

History

75 Commits
Aug 17, 2024
Apr 30, 2024
Dec 5, 2023
Feb 17, 2024
Sep 21, 2022
Sep 21, 2022
Sep 21, 2022
Sep 30, 2022
Sep 21, 2022
May 27, 2023
Mar 25, 2024
Sep 21, 2022
Sep 30, 2022
Sep 21, 2022
Sep 2, 2024
Sep 2, 2024
Sep 21, 2022
Dec 5, 2023

Repository files navigation

@vite-pwa/astro - Zero-config PWA Integration for Astro
Zero-config PWA Integration for Astro

NPM version NPM Downloads Docs & Guides
GitHub stars


๐Ÿš€ Features

  • ๐Ÿ“– Documentation & guides
  • ๐Ÿ‘Œ Zero-Config: sensible built-in default configs for common use cases
  • ๐Ÿ”ฉ Extensible: expose the full ability to customize the behavior of the plugin
  • ๐Ÿฆพ Type Strong: written in TypeScript
  • ๐Ÿ”Œ Offline Support: generate service worker with offline support (via Workbox)
  • โšก Fully tree shakable: auto inject Web App Manifest
  • ๐Ÿ’ฌ Prompt for new content: built-in support for Vanilla JavaScript, Vue 3, React, Svelte, SolidJS and Preact
  • โš™๏ธ Stale-while-revalidate: automatic reload when new content is available
  • โœจ Static assets handling: configure static assets for offline support
  • ๐Ÿž Development Support: debug your custom service worker logic as you develop your application
  • ๐Ÿ› ๏ธ Versatile: integration with meta frameworks: รฎles, SvelteKit, VitePress, Astro, Nuxt 3 and Remix
  • ๐Ÿ’ฅ PWA Assets Generator: generate all the PWA assets from a single command and a single source image
  • ๐Ÿš€ PWA Assets Integration: serving, generating and injecting PWA Assets on the fly in your application

๐Ÿ“ฆ Install

From v0.2.0, @vite-pwa/astro requires Vite 5 and Astro 4.0.0 or above.

Using any version older than v0.2.0 requires Vite 3.1.0+.

npm i @vite-pwa/astro -D 

# yarn 
yarn add @vite-pwa/astro -D

# pnpm 
pnpm add @vite-pwa/astro -D

๐Ÿฆ„ Usage

Add @vite-pwa/astro integration to astro.config.mjs and configure it:

// astro.config.mjs
import { defineConfig } from 'astro/config'
import AstroPWA from '@vite-pwa/astro'

// https://astro.build/config
export default defineConfig({
  integrations: [AstroPWA()]
})

Read the ๐Ÿ“– documentation for a complete guide on how to configure and use this plugin.

โšก๏ธ Examples

You need to stop the dev server once started and then run npm run build && npm run preview to see the PWA in action.

Example Source Playground
Auto Update PWA GitHub Open in StackBlitz
Prompt for Update PWA GitHub Open in StackBlitz

๐Ÿ‘€ Full config

Check out the following links for more details:

๐Ÿ“„ License

MIT License ยฉ 2022-PRESENT Anthony Fu