placebo.mk/pwa/vite.config.ts
2026-02-22 01:11:20 +01:00

65 lines
1.5 KiB
TypeScript

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import tailwindcss from '@tailwindcss/vite'
import { VitePWA } from 'vite-plugin-pwa'
import path from 'path'
export default defineConfig({
plugins: [
react(),
tailwindcss(),
VitePWA({
strategies: 'injectManifest',
srcDir: 'src',
filename: 'sw.ts',
registerType: 'autoUpdate',
includeAssets: ['icons/*.svg'],
manifest: {
name: 'Placebo.mk',
short_name: 'Placebo',
description: 'Сатирични вести од Македонија',
lang: 'mk',
start_url: '/',
display: 'standalone',
background_color: '#ffffff',
theme_color: '#000000',
icons: [
{
src: '/icons/icon-192.svg',
sizes: '192x192',
type: 'image/svg+xml',
},
{
src: '/icons/icon-512.svg',
sizes: '512x512',
type: 'image/svg+xml',
},
{
src: '/icons/icon-512.svg',
sizes: '512x512',
type: 'image/svg+xml',
purpose: 'maskable',
},
],
},
devOptions: {
enabled: true,
},
}),
],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
},
preserveSymlinks: true,
},
optimizeDeps: {
include: ['react', 'react-dom', 'react-markdown'],
},
server: {
host: true,
port: 5174,
strictPort: true,
},
})