Files
myron e3b166803a Add full API endpoint suite, lib managers, webmail (Roundcube :8883), and NovaCPX icon/branding assets
- 14 API endpoints: accounts, packages, domains, dns, email, databases, ftp, ssl, cron, php, files, stats, webmail, server_setup
- 8 lib managers: AccountManager, VhostManager, DNSManager, EmailManager, DatabaseManager, PHPManager, FTPManager, SSLManager
- Roundcube webmail on dedicated port 8883 (sequenced after 8880/8881/8882)
- Custom NovaCPX SVG icon sprite (30+ unique icons), logo, mark, favicon
- PORT_WEBMAIL=8883 wired into Core.php, install.sh, UFW, Fail2Ban, credentials file

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 05:50:50 +00:00

27 lines
1.4 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 220 48">
<defs>
<linearGradient id="ng" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#6366f1"/>
<stop offset="60%" stop-color="#0ea5e9"/>
<stop offset="100%" stop-color="#10b981"/>
</linearGradient>
<linearGradient id="ng2" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#6366f1" stop-opacity="1"/>
<stop offset="100%" stop-color="#0ea5e9" stop-opacity="0.7"/>
</linearGradient>
</defs>
<!-- Hexagon core mark -->
<polygon points="24,4 40,13 40,31 24,40 8,31 8,13" fill="none" stroke="url(#ng)" stroke-width="2.5"/>
<!-- Inner orbit ring -->
<circle cx="24" cy="22" r="7" fill="none" stroke="url(#ng)" stroke-width="1.5" stroke-dasharray="3 2"/>
<!-- Central dot -->
<circle cx="24" cy="22" r="3" fill="url(#ng)"/>
<!-- Orbit node dots -->
<circle cx="24" cy="14" r="1.5" fill="#6366f1"/>
<circle cx="31" cy="26" r="1.5" fill="#0ea5e9"/>
<circle cx="17" cy="26" r="1.5" fill="#10b981"/>
<!-- Wordmark -->
<text x="52" y="32" font-family="'SF Pro Display','Segoe UI',sans-serif" font-size="22" font-weight="700" fill="url(#ng)" letter-spacing="-0.5">Nova</text>
<text x="118" y="32" font-family="'SF Pro Display','Segoe UI',sans-serif" font-size="22" font-weight="300" fill="#94a3b8" letter-spacing="2">CPX</text>
</svg>