first commit

This commit is contained in:
M1ngdaXie
2025-12-29 16:29:24 -08:00
commit 37d89b13b9
48 changed files with 7334 additions and 0 deletions

View File

@@ -0,0 +1,215 @@
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<defs>
<!-- Document Icons -->
<symbol id="icon-document" viewBox="0 0 24 24">
<path fill="currentColor" d="M6 2h8l4 4v14H6V2z"/>
<path fill="currentColor" opacity="0.3" d="M14 2v4h4l-4-4z"/>
<rect x="8" y="10" width="8" height="2" fill="currentColor" opacity="0.6"/>
<rect x="8" y="14" width="6" height="2" fill="currentColor" opacity="0.6"/>
</symbol>
<symbol id="icon-kanban" viewBox="0 0 24 24">
<rect x="2" y="4" width="6" height="16" fill="currentColor"/>
<rect x="9" y="4" width="6" height="10" fill="currentColor" opacity="0.7"/>
<rect x="16" y="4" width="6" height="14" fill="currentColor" opacity="0.5"/>
</symbol>
<symbol id="icon-plus" viewBox="0 0 24 24">
<rect x="10" y="4" width="4" height="16" fill="currentColor"/>
<rect x="4" y="10" width="16" height="4" fill="currentColor"/>
</symbol>
<symbol id="icon-trash" viewBox="0 0 24 24">
<rect x="7" y="6" width="10" height="2" fill="currentColor"/>
<rect x="8" y="8" width="8" height="12" fill="currentColor"/>
<rect x="9" y="4" width="6" height="2" fill="currentColor"/>
<rect x="10" y="10" width="2" height="8" fill="currentColor" opacity="0.3"/>
<rect x="14" y="10" width="2" height="8" fill="currentColor" opacity="0.3"/>
</symbol>
<symbol id="icon-back-arrow" viewBox="0 0 24 24">
<rect x="8" y="11" width="12" height="2" fill="currentColor"/>
<rect x="6" y="9" width="2" height="2" fill="currentColor"/>
<rect x="6" y="13" width="2" height="2" fill="currentColor"/>
<rect x="4" y="11" width="2" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-home" viewBox="0 0 24 24">
<path fill="currentColor" d="M12 4l-8 6v10h6v-6h4v6h6V10l-8-6z"/>
</symbol>
<!-- Text Editor Icons -->
<symbol id="icon-bold" viewBox="0 0 24 24">
<path fill="currentColor" d="M6 4h8c2 0 4 1.5 4 3.5s-1 3-3 3.5c2.5 0.5 4 2 4 4s-2 4-5 4H6V4z"/>
<rect x="8" y="7" width="6" height="2" fill="currentColor" opacity="0.3"/>
<rect x="8" y="13" width="7" height="2" fill="currentColor" opacity="0.3"/>
</symbol>
<symbol id="icon-italic" viewBox="0 0 24 24">
<path fill="currentColor" d="M10 4h8v3h-2.5l-3 10H15v3H7v-3h2.5l3-10H10V4z"/>
</symbol>
<symbol id="icon-h1" viewBox="0 0 24 24">
<rect x="4" y="6" width="2" height="12" fill="currentColor"/>
<rect x="4" y="11" width="6" height="2" fill="currentColor"/>
<rect x="8" y="6" width="2" height="12" fill="currentColor"/>
<rect x="15" y="8" width="2" height="10" fill="currentColor"/>
<rect x="13" y="8" width="2" height="3" fill="currentColor"/>
</symbol>
<symbol id="icon-h2" viewBox="0 0 24 24">
<rect x="4" y="6" width="2" height="12" fill="currentColor"/>
<rect x="4" y="11" width="6" height="2" fill="currentColor"/>
<rect x="8" y="6" width="2" height="12" fill="currentColor"/>
<path fill="currentColor" d="M14 8h4v2h-2v2h2v2h-4v2h6v-2h-2v-2h2v-2h-2V8h2V6h-6v2z"/>
</symbol>
<symbol id="icon-bullet-list" viewBox="0 0 24 24">
<rect x="4" y="6" width="3" height="3" fill="currentColor"/>
<rect x="9" y="7" width="11" height="2" fill="currentColor"/>
<rect x="4" y="11" width="3" height="3" fill="currentColor"/>
<rect x="9" y="12" width="11" height="2" fill="currentColor"/>
<rect x="4" y="16" width="3" height="3" fill="currentColor"/>
<rect x="9" y="17" width="11" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-numbered-list" viewBox="0 0 24 24">
<text x="4" y="9" font-size="8" font-weight="bold" fill="currentColor">1</text>
<rect x="9" y="7" width="11" height="2" fill="currentColor"/>
<text x="4" y="14" font-size="8" font-weight="bold" fill="currentColor">2</text>
<rect x="9" y="12" width="11" height="2" fill="currentColor"/>
<text x="4" y="19" font-size="8" font-weight="bold" fill="currentColor">3</text>
<rect x="9" y="17" width="11" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-undo" viewBox="0 0 24 24">
<path fill="currentColor" d="M8 8V4l-6 6 6 6v-4h6c2 0 4 2 4 4v2h2v-2c0-3.3-2.7-6-6-6H8z"/>
</symbol>
<symbol id="icon-redo" viewBox="0 0 24 24">
<path fill="currentColor" d="M16 8V4l6 6-6 6v-4h-6c-3.3 0-6 2.7-6 6v2H2v-2c0-4.4 3.6-8 8-8h6z"/>
</symbol>
<!-- Status Icons -->
<symbol id="icon-checkmark" viewBox="0 0 24 24">
<rect x="4" y="12" width="2" height="2" fill="currentColor"/>
<rect x="6" y="14" width="2" height="2" fill="currentColor"/>
<rect x="8" y="16" width="2" height="2" fill="currentColor"/>
<rect x="10" y="14" width="2" height="2" fill="currentColor"/>
<rect x="12" y="12" width="2" height="2" fill="currentColor"/>
<rect x="14" y="10" width="2" height="2" fill="currentColor"/>
<rect x="16" y="8" width="2" height="2" fill="currentColor"/>
<rect x="18" y="6" width="2" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-sync-arrows" viewBox="0 0 24 24">
<path fill="currentColor" d="M12 4V2l-4 4 4 4V8c3.3 0 6 2.7 6 6h2c0-4.4-3.6-8-8-8z"/>
<path fill="currentColor" d="M12 20v2l4-4-4-4v2c-3.3 0-6-2.7-6-6H4c0 4.4 3.6 8 8 8z"/>
</symbol>
<symbol id="icon-spinner" viewBox="0 0 24 24">
<rect x="11" y="2" width="2" height="6" fill="currentColor"/>
<rect x="11" y="16" width="2" height="6" fill="currentColor" opacity="0.3"/>
<rect x="2" y="11" width="6" height="2" fill="currentColor" opacity="0.5"/>
<rect x="16" y="11" width="6" height="2" fill="currentColor" opacity="0.7"/>
<rect x="5" y="5" width="3" height="3" fill="currentColor" opacity="0.8"/>
<rect x="16" y="16" width="3" height="3" fill="currentColor" opacity="0.4"/>
<rect x="5" y="16" width="3" height="3" fill="currentColor" opacity="0.6"/>
<rect x="16" y="5" width="3" height="3" fill="currentColor" opacity="0.9"/>
</symbol>
<symbol id="icon-connected" viewBox="0 0 24 24">
<circle cx="12" cy="12" r="8" fill="currentColor"/>
<circle cx="12" cy="12" r="4" fill="currentColor" opacity="0.5"/>
</symbol>
<symbol id="icon-disconnected" viewBox="0 0 24 24">
<circle cx="12" cy="12" r="8" fill="currentColor" opacity="0.3"/>
<rect x="6" y="11" width="12" height="2" fill="currentColor" transform="rotate(45 12 12)"/>
</symbol>
<!-- Decorative Sprites -->
<symbol id="icon-sparkle" viewBox="0 0 24 24">
<rect x="11" y="4" width="2" height="6" fill="currentColor"/>
<rect x="11" y="14" width="2" height="6" fill="currentColor"/>
<rect x="4" y="11" width="6" height="2" fill="currentColor"/>
<rect x="14" y="11" width="6" height="2" fill="currentColor"/>
<rect x="7" y="7" width="2" height="2" fill="currentColor"/>
<rect x="15" y="7" width="2" height="2" fill="currentColor"/>
<rect x="7" y="15" width="2" height="2" fill="currentColor"/>
<rect x="15" y="15" width="2" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-gem" viewBox="0 0 24 24">
<path fill="#FF6EC7" d="M12 4l-8 6 8 10 8-10-8-6z"/>
<path fill="#FFD23F" opacity="0.7" d="M12 4l-4 3 4 5 4-5-4-3z"/>
<path fill="#00D9FF" opacity="0.5" d="M8 10l4 10v-8l-4-2z"/>
<path fill="#8B4FB9" opacity="0.5" d="M16 10l-4 10v-8l4-2z"/>
</symbol>
<symbol id="icon-orb" viewBox="0 0 24 24">
<circle cx="12" cy="12" r="8" fill="#8B4FB9"/>
<circle cx="10" cy="10" r="3" fill="#FF6EC7" opacity="0.6"/>
<circle cx="14" cy="14" r="2" fill="#00D9FF" opacity="0.4"/>
</symbol>
<symbol id="icon-wand" viewBox="0 0 24 24">
<rect x="3" y="17" width="14" height="3" fill="currentColor" transform="rotate(-45 10 18.5)"/>
<rect x="16" y="4" width="2" height="2" fill="#FFD23F"/>
<rect x="18" y="6" width="2" height="2" fill="#FF6EC7"/>
<rect x="14" y="6" width="2" height="2" fill="#00D9FF"/>
<rect x="16" y="8" width="2" height="2" fill="#8EF048"/>
</symbol>
<symbol id="icon-scroll" viewBox="0 0 24 24">
<path fill="currentColor" d="M6 4h12v2h-2v12h2v2H6v-2h2V6H6V4z"/>
<rect x="10" y="8" width="6" height="2" fill="currentColor" opacity="0.3"/>
<rect x="10" y="12" width="4" height="2" fill="currentColor" opacity="0.3"/>
</symbol>
<symbol id="icon-chest" viewBox="0 0 24 24">
<rect x="4" y="10" width="16" height="10" fill="#FF8E3C"/>
<rect x="4" y="8" width="16" height="2" fill="#FFD23F"/>
<rect x="11" y="13" width="2" height="4" fill="#FFD23F"/>
<circle cx="12" cy="15" r="1" fill="#4A1B6F"/>
</symbol>
<symbol id="icon-potion" viewBox="0 0 24 24">
<rect x="10" y="4" width="4" height="3" fill="currentColor"/>
<path fill="#FF6EC7" d="M8 7h8v2h-1v9H9V9H8V7z"/>
<rect x="9" y="11" width="6" height="5" fill="#00D9FF" opacity="0.6"/>
</symbol>
<symbol id="icon-shield" viewBox="0 0 24 24">
<path fill="currentColor" d="M12 2l-8 4v6c0 5 3.6 9.2 8 10 4.4-0.8 8-5 8-10V6l-8-4z"/>
<path fill="currentColor" opacity="0.3" d="M12 4l-6 3v5c0 3.7 2.7 6.9 6 7.5V4z"/>
</symbol>
<symbol id="icon-sword" viewBox="0 0 24 24">
<rect x="3" y="15" width="4" height="4" fill="currentColor"/>
<rect x="7" y="11" width="2" height="2" fill="currentColor"/>
<rect x="9" y="9" width="2" height="2" fill="currentColor"/>
<rect x="11" y="7" width="10" height="2" fill="currentColor"/>
<rect x="19" y="5" width="2" height="2" fill="currentColor"/>
<rect x="19" y="9" width="2" height="2" fill="currentColor"/>
</symbol>
<symbol id="icon-crown" viewBox="0 0 24 24">
<path fill="#FFD23F" d="M4 16h16v2H4v-2z"/>
<path fill="#FFD23F" d="M4 10l4 4 4-6 4 6 4-4v6H4v-6z"/>
<circle cx="6" cy="8" r="2" fill="#FF6EC7"/>
<circle cx="12" cy="4" r="2" fill="#FF6EC7"/>
<circle cx="18" cy="8" r="2" fill="#FF6EC7"/>
</symbol>
<symbol id="icon-user" viewBox="0 0 24 24">
<rect x="8" y="4" width="8" height="8" fill="currentColor"/>
<path fill="currentColor" d="M6 14h12l2 6H4l2-6z"/>
</symbol>
<symbol id="icon-online-dot" viewBox="0 0 24 24">
<circle cx="12" cy="12" r="6" fill="#8EF048"/>
<circle cx="10" cy="10" r="2" fill="#FFFFFF" opacity="0.6"/>
</symbol>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -0,0 +1,70 @@
<svg xmlns="http://www.w3.org/2000/svg" width="0" height="0" style="position: absolute;">
<defs>
<!-- Diagonal Dither Pattern (8x8 tile) -->
<pattern id="pixel-dither-diagonal" x="0" y="0" width="8" height="8" patternUnits="userSpaceOnUse">
<rect fill="#4A3B5C" width="8" height="8"/>
<path d="M0,0 L2,0 L2,2 L0,2 Z M4,0 L6,0 L6,2 L4,2 Z
M2,2 L4,2 L4,4 L2,4 Z M6,2 L8,2 L8,4 L6,4 Z
M0,4 L2,4 L2,6 L0,6 Z M4,4 L6,4 L6,6 L4,6 Z
M2,6 L4,6 L4,8 L2,8 Z M6,6 L8,6 L8,8 L6,8 Z"
fill="#8B4FB9" opacity="0.15"/>
</pattern>
<!-- Subtle Checkerboard Pattern (4x4 tile) -->
<pattern id="pixel-checker-subtle" x="0" y="0" width="4" height="4" patternUnits="userSpaceOnUse">
<rect fill="transparent" width="4" height="4"/>
<rect fill="rgba(75, 27, 111, 0.08)" x="0" y="0" width="2" height="2"/>
<rect fill="rgba(75, 27, 111, 0.08)" x="2" y="2" width="2" height="2"/>
</pattern>
<!-- Dense Pixel Dots (for backgrounds) -->
<pattern id="pixel-dots" x="0" y="0" width="6" height="6" patternUnits="userSpaceOnUse">
<rect fill="transparent" width="6" height="6"/>
<circle cx="3" cy="3" r="1" fill="rgba(139, 79, 185, 0.1)"/>
</pattern>
<!-- Gradient Dither (vertical) -->
<pattern id="pixel-gradient-dither" x="0" y="0" width="16" height="64" patternUnits="userSpaceOnUse">
<rect fill="transparent" width="16" height="64"/>
<!-- Top section - dense dots -->
<g fill="rgba(75, 27, 111, 0.12)">
<rect x="0" y="0" width="2" height="2"/>
<rect x="4" y="0" width="2" height="2"/>
<rect x="8" y="0" width="2" height="2"/>
<rect x="12" y="0" width="2" height="2"/>
<rect x="2" y="2" width="2" height="2"/>
<rect x="6" y="2" width="2" height="2"/>
<rect x="10" y="2" width="2" height="2"/>
<rect x="14" y="2" width="2" height="2"/>
</g>
<!-- Middle section - medium -->
<g fill="rgba(75, 27, 111, 0.08)">
<rect x="0" y="16" width="2" height="2"/>
<rect x="8" y="16" width="2" height="2"/>
<rect x="4" y="18" width="2" height="2"/>
<rect x="12" y="18" width="2" height="2"/>
</g>
<!-- Bottom section - sparse -->
<g fill="rgba(75, 27, 111, 0.04)">
<rect x="2" y="48" width="2" height="2"/>
<rect x="10" y="50" width="2" height="2"/>
</g>
</pattern>
<!-- Scanlines Pattern (CRT effect) -->
<pattern id="pixel-scanlines" x="0" y="0" width="4" height="4" patternUnits="userSpaceOnUse">
<rect fill="transparent" width="4" height="4"/>
<line x1="0" y1="0" x2="4" y2="0" stroke="rgba(0, 0, 0, 0.03)" stroke-width="1"/>
<line x1="0" y1="2" x2="4" y2="2" stroke="rgba(0, 0, 0, 0.03)" stroke-width="1"/>
</pattern>
<!-- Panel Texture (for light backgrounds) -->
<pattern id="pixel-panel-texture" x="0" y="0" width="8" height="8" patternUnits="userSpaceOnUse">
<rect fill="transparent" width="8" height="8"/>
<rect x="0" y="0" width="1" height="1" fill="rgba(139, 79, 185, 0.06)"/>
<rect x="4" y="4" width="1" height="1" fill="rgba(139, 79, 185, 0.06)"/>
<rect x="2" y="6" width="1" height="1" fill="rgba(255, 110, 199, 0.04)"/>
<rect x="6" y="2" width="1" height="1" fill="rgba(0, 217, 255, 0.04)"/>
</pattern>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

1
frontend/public/vite.svg Normal file
View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB