🏠
Immobilien Exposé Builder
Lade...
🕌
Gebetszeiten — Namaz Vakitleri
Lade...
📄 Schritt 3: Datei manifest.json erstellen (im selben Ordner):
{
"name": "Ultra Elite Dashboard",
"short_name": "Dashboard",
"start_url": "./index.html",
"display": "standalone",
"background_color": "#06060b",
"theme_color": "#6366f1",
"icons": [
{ "src": "icon-192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "icon-512.png", "sizes": "512x512", "type": "image/png" }
]
}
⚙️ Schritt 4: Datei sw.js erstellen:
const CACHE = 'dashboard-v1';
const ASSETS = ['./', './index.html', './manifest.json'];
self.addEventListener('install', e => {
e.waitUntil(caches.open(CACHE).then(c => c.addAll(ASSETS)).then(() => self.skipWaiting()));
});
self.addEventListener('activate', e => {
e.waitUntil(caches.keys().then(keys => Promise.all(keys.filter(k => k !== CACHE).map(k => caches.delete(k)))).then(() => self.clients.claim()));
});
self.addEventListener('fetch', e => {
if (e.request.method !== 'GET') return;
e.respondWith(
caches.match(e.request).then(cached => {
const network = fetch(e.request).then(res => {
if (res && res.status === 200) {
const clone = res.clone();
caches.open(CACHE).then(c => c.put(e.request, clone));
}
return res;
}).catch(() => cached);
return cached || network;
})
);
});