Swapped in the new brand logo for every place the app icon appears: - Favicon, apple-touch-icon, and og:image / twitter:image (via index.html references to /images/icon-1024.png) - PWA manifest icons (any + maskable) and all app shortcuts - In-app header logos (Layout, Index) and logo.png / logo-icon.png - This same icon-1024.png is what the Zapstore listing pulls, so the store entry updates too Also corrected the manifest icon "sizes" declarations to match the actual asset dimensions (180x180) so browsers don't reject the icons for a size mismatch. Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
139 lines
3.2 KiB
JSON
139 lines
3.2 KiB
JSON
{
|
|
"name": "SkateSpots - Decentralized Skate Map",
|
|
"short_name": "SkateSpots",
|
|
"id": "/",
|
|
"description": "Discover skate spots, find coaches, join events, and connect with the skateboarding community on Nostr. Free, decentralized, censorship-resistant.",
|
|
"start_url": "/",
|
|
"scope": "/",
|
|
"display": "standalone",
|
|
"display_override": ["standalone", "minimal-ui", "browser"],
|
|
"background_color": "#000000",
|
|
"theme_color": "#ff0040",
|
|
"orientation": "portrait-primary",
|
|
"lang": "en",
|
|
"dir": "ltr",
|
|
"categories": ["sports", "social", "lifestyle", "navigation"],
|
|
"iarc_rating_id": "",
|
|
"prefer_related_applications": false,
|
|
"related_applications": [],
|
|
"icons": [
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png",
|
|
"purpose": "any"
|
|
},
|
|
{
|
|
"src": "/images/icon-maskable-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png",
|
|
"purpose": "maskable"
|
|
},
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png",
|
|
"purpose": "any"
|
|
}
|
|
],
|
|
"screenshots": [
|
|
{
|
|
"src": "/images/screenshot-mobile.svg",
|
|
"sizes": "390x844",
|
|
"type": "image/svg+xml",
|
|
"form_factor": "narrow",
|
|
"label": "SkateSpots mobile view - discover spots on the map"
|
|
},
|
|
{
|
|
"src": "/images/screenshot-desktop.svg",
|
|
"sizes": "1920x1080",
|
|
"type": "image/svg+xml",
|
|
"form_factor": "wide",
|
|
"label": "SkateSpots desktop view - full map experience"
|
|
}
|
|
],
|
|
"shortcuts": [
|
|
{
|
|
"name": "Map",
|
|
"short_name": "Map",
|
|
"description": "Browse skate spots on the map",
|
|
"url": "/map",
|
|
"icons": [
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Events",
|
|
"short_name": "Events",
|
|
"description": "View upcoming skate events",
|
|
"url": "/events",
|
|
"icons": [
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Coaches",
|
|
"short_name": "Coaches",
|
|
"description": "Find skateboarding coaches",
|
|
"url": "/coaches",
|
|
"icons": [
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Wallet",
|
|
"short_name": "Wallet",
|
|
"description": "Manage your Lightning wallet",
|
|
"url": "/wallet",
|
|
"icons": [
|
|
{
|
|
"src": "/images/icon-1024.png",
|
|
"sizes": "180x180",
|
|
"type": "image/png"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"protocol_handlers": [
|
|
{
|
|
"protocol": "web+nostr",
|
|
"url": "/%s"
|
|
},
|
|
{
|
|
"protocol": "web+lightning",
|
|
"url": "/wallet?invoice=%s"
|
|
},
|
|
{
|
|
"protocol": "web+cashu",
|
|
"url": "/wallet?token=%s"
|
|
}
|
|
],
|
|
"share_target": {
|
|
"action": "/share",
|
|
"method": "GET",
|
|
"params": {
|
|
"title": "title",
|
|
"text": "text",
|
|
"url": "url"
|
|
}
|
|
},
|
|
"launch_handler": {
|
|
"client_mode": "navigate-existing"
|
|
},
|
|
"edge_side_panel": {
|
|
"preferred_width": 400
|
|
},
|
|
"handle_links": "preferred"
|
|
}
|