Use supplied artwork for app icons
BIN
assets/brand/veritas-kanban-app-icon.png
Normal file
|
After Width: | Height: | Size: 951 KiB |
BIN
assets/brand/veritas-kanban-icon-source.jpg
Normal file
|
After Width: | Height: | Size: 178 KiB |
|
|
@ -111,6 +111,7 @@
|
|||
"packageName": "veritas-kanban"
|
||||
},
|
||||
"linux": {
|
||||
"icon": "resources/icon.png",
|
||||
"category": "Office",
|
||||
"maintainer": "Digital Meld <support@digitalmeld.io>",
|
||||
"synopsis": "Local-first task management and AI agent orchestration",
|
||||
|
|
@ -137,6 +138,7 @@
|
|||
]
|
||||
},
|
||||
"win": {
|
||||
"icon": "resources/icon.ico",
|
||||
"target": [
|
||||
{
|
||||
"target": "nsis",
|
||||
|
|
|
|||
BIN
desktop/resources/icon.ico
Normal file
|
After Width: | Height: | Size: 151 KiB |
BIN
desktop/resources/icon.png
Normal file
|
After Width: | Height: | Size: 951 KiB |
|
|
@ -1,21 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="img" aria-label="Veritas Kanban">
|
||||
<defs>
|
||||
<linearGradient id="vk-bg" x1="64" y1="32" x2="448" y2="480" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#171a24"/>
|
||||
<stop offset="1" stop-color="#08090d"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="vk-accent" x1="140" y1="104" x2="384" y2="398" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#8b5cf6"/>
|
||||
<stop offset="1" stop-color="#14b8a6"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="512" height="512" rx="104" fill="url(#vk-bg)"/>
|
||||
<rect x="54" y="54" width="404" height="404" rx="86" fill="none" stroke="url(#vk-accent)" stroke-width="18"/>
|
||||
<circle cx="256" cy="154" r="18" fill="#f8fafc"/>
|
||||
<rect x="242" y="172" width="28" height="204" rx="14" fill="#f8fafc"/>
|
||||
<rect x="174" y="386" width="164" height="32" rx="16" fill="#f8fafc"/>
|
||||
<rect x="206" y="354" width="100" height="40" rx="20" fill="#14b8a6"/>
|
||||
<path d="M126 206 386 178" fill="none" stroke="#d6a533" stroke-width="24" stroke-linecap="round"/>
|
||||
<path d="M142 205v68M102 273h80M102 273c0 38 40 54 40 54s40-16 40-54" fill="none" stroke="#f8fafc" stroke-width="16" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M370 180v68M330 248h80M330 248c0 38 40 54 40 54s40-16 40-54" fill="none" stroke="#f8fafc" stroke-width="16" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB |
|
|
@ -43,7 +43,8 @@ Reverse proxies should route these paths to the same Veritas host:
|
|||
- `/ws`
|
||||
- `/manifest.webmanifest`
|
||||
- `/sw.js`
|
||||
- `/favicon.svg`
|
||||
- `/favicon.png`
|
||||
- `/apple-touch-icon.png`
|
||||
- `/icons/*`
|
||||
- `/assets/*`
|
||||
|
||||
|
|
|
|||
|
|
@ -1,36 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" fill="none">
|
||||
<!-- Purple circle background -->
|
||||
<circle cx="32" cy="32" r="32" fill="#7c3aed"/>
|
||||
|
||||
<!-- White scales cutout -->
|
||||
<g fill="white" stroke="white" stroke-linecap="round" stroke-linejoin="round">
|
||||
<!-- Top pivot -->
|
||||
<circle cx="32" cy="14" r="2.5" fill="white" stroke="none"/>
|
||||
|
||||
<!-- Center pillar -->
|
||||
<rect x="30.5" y="16" width="3" height="28" rx="1.5" stroke="none"/>
|
||||
|
||||
<!-- Base -->
|
||||
<rect x="23" y="46" width="18" height="3" rx="1.5" stroke="none"/>
|
||||
<rect x="27" y="43.5" width="10" height="3.5" rx="1.5" stroke="none"/>
|
||||
|
||||
<!-- Crossbeam (tilted — left lower) -->
|
||||
<line x1="11" y1="21" x2="53" y2="17" stroke-width="2.5"/>
|
||||
|
||||
<!-- Left chains -->
|
||||
<line x1="11" y1="21" x2="11" y2="30" stroke-width="1.5"/>
|
||||
<line x1="5" y1="30" x2="11" y2="30" stroke-width="1.5"/>
|
||||
<line x1="11" y1="30" x2="17" y2="30" stroke-width="1.5"/>
|
||||
|
||||
<!-- Left pan -->
|
||||
<path d="M4 30 C4 36, 11 38, 11 38 C11 38, 18 36, 18 30" fill="white" stroke="none"/>
|
||||
|
||||
<!-- Right chains -->
|
||||
<line x1="53" y1="17" x2="53" y2="24" stroke-width="1.5"/>
|
||||
<line x1="47" y1="24" x2="53" y2="24" stroke-width="1.5"/>
|
||||
<line x1="53" y1="24" x2="59" y2="24" stroke-width="1.5"/>
|
||||
|
||||
<!-- Right pan -->
|
||||
<path d="M46 24 C46 30, 53 32, 53 32 C53 32, 60 30, 60 24" fill="white" stroke="none"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB |
|
|
@ -24,9 +24,9 @@
|
|||
})();
|
||||
</script>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/svg+xml" href="%BASE_URL%favicon.svg" />
|
||||
<link rel="icon" type="image/png" href="%BASE_URL%favicon.png" />
|
||||
<link rel="manifest" href="%BASE_URL%manifest.webmanifest" />
|
||||
<link rel="apple-touch-icon" href="%BASE_URL%icons/pwa-icon.svg" />
|
||||
<link rel="apple-touch-icon" href="%BASE_URL%apple-touch-icon.png" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="application-name" content="Veritas Kanban" />
|
||||
<meta name="apple-mobile-web-app-title" content="Veritas" />
|
||||
|
|
|
|||
BIN
web/public/apple-touch-icon.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
web/public/favicon.png
Normal file
|
After Width: | Height: | Size: 9.3 KiB |
|
|
@ -1,21 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Veritas Kanban">
|
||||
<defs>
|
||||
<linearGradient id="vk-bg" x1="8" y1="4" x2="56" y2="60" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#171a24"/>
|
||||
<stop offset="1" stop-color="#08090d"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="vk-accent" x1="18" y1="12" x2="48" y2="50" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#8b5cf6"/>
|
||||
<stop offset="1" stop-color="#14b8a6"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="64" height="64" rx="14" fill="url(#vk-bg)"/>
|
||||
<rect x="7" y="7" width="50" height="50" rx="11" fill="none" stroke="url(#vk-accent)" stroke-width="3"/>
|
||||
<circle cx="32" cy="19" r="2.6" fill="#f8fafc"/>
|
||||
<rect x="30.2" y="21" width="3.6" height="25" rx="1.8" fill="#f8fafc"/>
|
||||
<rect x="22" y="48" width="20" height="4" rx="2" fill="#f8fafc"/>
|
||||
<rect x="26" y="43.5" width="12" height="5" rx="2.5" fill="#14b8a6"/>
|
||||
<path d="M15.5 25.5 48.5 22" fill="none" stroke="#d6a533" stroke-width="3.5" stroke-linecap="round"/>
|
||||
<path d="M17.5 25.5v8M12.5 33.5h10M12.5 33.5c0 5 5 7 5 7s5-2 5-7" fill="none" stroke="#f8fafc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M46.5 22v8M41.5 30h10M41.5 30c0 5 5 7 5 7s5-2 5-7" fill="none" stroke="#f8fafc" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
BIN
web/public/icons/pwa-icon-192.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
web/public/icons/pwa-icon-512.png
Normal file
|
After Width: | Height: | Size: 329 KiB |
|
|
@ -1,21 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="img" aria-label="Veritas Kanban">
|
||||
<defs>
|
||||
<linearGradient id="vk-bg" x1="64" y1="32" x2="448" y2="480" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#171a24"/>
|
||||
<stop offset="1" stop-color="#08090d"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="vk-accent" x1="140" y1="104" x2="384" y2="398" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#8b5cf6"/>
|
||||
<stop offset="1" stop-color="#14b8a6"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="512" height="512" rx="104" fill="url(#vk-bg)"/>
|
||||
<rect x="54" y="54" width="404" height="404" rx="86" fill="none" stroke="url(#vk-accent)" stroke-width="18"/>
|
||||
<circle cx="256" cy="154" r="18" fill="#f8fafc"/>
|
||||
<rect x="242" y="172" width="28" height="204" rx="14" fill="#f8fafc"/>
|
||||
<rect x="174" y="386" width="164" height="32" rx="16" fill="#f8fafc"/>
|
||||
<rect x="206" y="354" width="100" height="40" rx="20" fill="#14b8a6"/>
|
||||
<path d="M126 206 386 178" fill="none" stroke="#d6a533" stroke-width="24" stroke-linecap="round"/>
|
||||
<path d="M142 205v68M102 273h80M102 273c0 38 40 54 40 54s40-16 40-54" fill="none" stroke="#f8fafc" stroke-width="16" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M370 180v68M330 248h80M330 248c0 38 40 54 40 54s40-16 40-54" fill="none" stroke="#f8fafc" stroke-width="16" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB |
BIN
web/public/icons/pwa-maskable-icon-512.png
Normal file
|
After Width: | Height: | Size: 240 KiB |
|
|
@ -1,21 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="img" aria-label="Veritas Kanban">
|
||||
<defs>
|
||||
<linearGradient id="vk-bg" x1="64" y1="32" x2="448" y2="480" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#171a24"/>
|
||||
<stop offset="1" stop-color="#08090d"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="vk-accent" x1="150" y1="116" x2="372" y2="384" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#8b5cf6"/>
|
||||
<stop offset="1" stop-color="#14b8a6"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="512" height="512" fill="url(#vk-bg)"/>
|
||||
<rect x="74" y="74" width="364" height="364" rx="82" fill="none" stroke="url(#vk-accent)" stroke-width="18"/>
|
||||
<circle cx="256" cy="160" r="17" fill="#f8fafc"/>
|
||||
<rect x="243" y="178" width="26" height="188" rx="13" fill="#f8fafc"/>
|
||||
<rect x="182" y="378" width="148" height="30" rx="15" fill="#f8fafc"/>
|
||||
<rect x="212" y="348" width="88" height="38" rx="19" fill="#14b8a6"/>
|
||||
<path d="M136 212 376 186" fill="none" stroke="#d6a533" stroke-width="23" stroke-linecap="round"/>
|
||||
<path d="M150 211v62M114 273h72M114 273c0 34 36 48 36 48s36-14 36-48" fill="none" stroke="#f8fafc" stroke-width="15" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path d="M362 187v62M326 249h72M326 249c0 34 36 48 36 48s36-14 36-48" fill="none" stroke="#f8fafc" stroke-width="15" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB |
|
|
@ -13,15 +13,21 @@
|
|||
"categories": ["business", "productivity", "utilities"],
|
||||
"icons": [
|
||||
{
|
||||
"src": "icons/pwa-icon.svg",
|
||||
"sizes": "any",
|
||||
"type": "image/svg+xml",
|
||||
"src": "icons/pwa-icon-192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "any"
|
||||
},
|
||||
{
|
||||
"src": "icons/pwa-maskable-icon.svg",
|
||||
"sizes": "any",
|
||||
"type": "image/svg+xml",
|
||||
"src": "icons/pwa-icon-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "any"
|
||||
},
|
||||
{
|
||||
"src": "icons/pwa-maskable-icon-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,14 +1,16 @@
|
|||
/* global caches, fetch, self, URL */
|
||||
|
||||
const CACHE_VERSION = 'v1';
|
||||
const CACHE_VERSION = 'v2';
|
||||
const STATIC_CACHE = `veritas-kanban-static-${CACHE_VERSION}`;
|
||||
const SHELL_URL = new URL('./', self.registration.scope).toString();
|
||||
const PRECACHE_URLS = [
|
||||
SHELL_URL,
|
||||
new URL('manifest.webmanifest', self.registration.scope).toString(),
|
||||
new URL('favicon.svg', self.registration.scope).toString(),
|
||||
new URL('icons/pwa-icon.svg', self.registration.scope).toString(),
|
||||
new URL('icons/pwa-maskable-icon.svg', self.registration.scope).toString(),
|
||||
new URL('favicon.png', self.registration.scope).toString(),
|
||||
new URL('apple-touch-icon.png', self.registration.scope).toString(),
|
||||
new URL('icons/pwa-icon-192.png', self.registration.scope).toString(),
|
||||
new URL('icons/pwa-icon-512.png', self.registration.scope).toString(),
|
||||
new URL('icons/pwa-maskable-icon-512.png', self.registration.scope).toString(),
|
||||
];
|
||||
const STATIC_DESTINATIONS = new Set(['font', 'image', 'manifest', 'script', 'style', 'worker']);
|
||||
|
||||
|
|
|
|||