app-platform: generate catalog from app manifests

This commit is contained in:
archipelago
2026-06-11 00:24:20 -04:00
parent 9079d404d6
commit 09ec64932f
30 changed files with 1533 additions and 235 deletions

View File

@@ -0,0 +1,3 @@
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18.9 21.8V15.8H24.9V21.8H18.9ZM25.5 21.8V15.8H31.6V21.8H25.5ZM32.2 21.8V15.8H38.3V21.8H32.2ZM39 21.8V15.8H44.9V21.8H39ZM39 28.5V22.5H44.9V28.5H39ZM45.6 28.5V22.5H51.7V28.5H45.6ZM12.2 35.2V29.2H18.3V35.2H12.2ZM18.9 35.2V29.2H24.9V35.2H18.9ZM25.5 35.2V29.2H31.6V35.2H25.5ZM32.2 35.2V29.2H38.3V35.2H32.2ZM39 35.2V29.2H44.9V35.2H39ZM45.6 35.2V29.2H51.7V35.2H45.6ZM12.2 41.8V35.8H18.3V41.8H12.2ZM18.9 41.8V35.8H24.9V41.8H18.9ZM39 41.8V35.8H44.9V41.8H39ZM45.6 41.8V35.8H51.7V41.8H45.6ZM18.9 48.5V42.5H24.9V48.5H18.9ZM25.5 48.5V42.5H31.6V48.5H25.5ZM32.2 48.5V42.5H38.3V48.5H32.2ZM39 48.5V42.5H44.9V48.5H39Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 731 B

View File

@@ -0,0 +1,28 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" role="img" aria-labelledby="title desc">
<title id="title">Meshtastic</title>
<desc id="desc">LoRa mesh radio nodes connected by signal links</desc>
<defs>
<linearGradient id="radioBody" x1="27" y1="28" x2="93" y2="107" gradientUnits="userSpaceOnUse">
<stop stop-color="#f8fafc"/>
<stop offset="1" stop-color="#94a3b8"/>
</linearGradient>
<linearGradient id="signal" x1="16" y1="14" x2="112" y2="114" gradientUnits="userSpaceOnUse">
<stop stop-color="#38bdf8"/>
<stop offset="0.52" stop-color="#22c55e"/>
<stop offset="1" stop-color="#f59e0b"/>
</linearGradient>
</defs>
<rect width="128" height="128" rx="26" fill="#0f172a"/>
<path d="M36 31 50 78" stroke="#64748b" stroke-width="6" stroke-linecap="round"/>
<path d="M32 28c7-5 16-5 23 0" stroke="#38bdf8" stroke-width="5" stroke-linecap="round" fill="none"/>
<path d="M24 18c12-9 28-9 40 0" stroke="#38bdf8" stroke-opacity=".55" stroke-width="5" stroke-linecap="round" fill="none"/>
<rect x="42" y="54" width="50" height="55" rx="11" fill="url(#radioBody)"/>
<rect x="51" y="64" width="32" height="15" rx="4" fill="#0f172a"/>
<circle cx="57" cy="94" r="5" fill="#0f172a"/>
<circle cx="77" cy="94" r="5" fill="#0f172a"/>
<circle cx="26" cy="84" r="8" fill="#38bdf8"/>
<circle cx="102" cy="43" r="8" fill="#22c55e"/>
<circle cx="103" cy="99" r="8" fill="#f59e0b"/>
<path d="M33 81 51 72M82 65l15-17M88 93l8 3" stroke="url(#signal)" stroke-width="5" stroke-linecap="round"/>
<path d="M22 103c25-16 55-16 84 0" stroke="#22c55e" stroke-opacity=".32" stroke-width="5" stroke-linecap="round" fill="none"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -1,5 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" role="img" aria-label="Saleor">
<rect width="128" height="128" rx="30" fill="#111827"/>
<path d="M34 42c0-10 9-18 22-18h38v16H56c-5 0-8 2-8 5 0 4 4 5 13 7l15 3c15 3 24 11 24 24 0 15-12 25-31 25H31V88h39c8 0 13-3 13-8 0-4-4-6-12-8l-16-3C41 66 34 57 34 42Z" fill="#fff"/>
<path d="M29 103h70v8H29z" fill="#7C3AED"/>
</svg>

Before

Width:  |  Height:  |  Size: 389 B