Add a new section to the website for inviting users

Introduce new CSS styles for the "Add Warden" section, including layout for invite steps, mode cards, and call-to-action buttons.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: aed2e46d-25bb-4b73-81a1-bb9e8437c261
Replit-Commit-Checkpoint-Type: intermediate_checkpoint
Replit-Commit-Event-Id: f05e5d60-b167-482a-b0db-92e675c7e63a
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/3bdfff67-975a-46ad-9845-fbb6b4a4c4b5/aed2e46d-25bb-4b73-81a1-bb9e8437c261/jIG0JV8
Replit-Helium-Checkpoint-Created: true
This commit is contained in:
sirpiglr 2025-12-09 22:21:06 +00:00
parent 77bfb28c91
commit 80c002ca6e
2 changed files with 296 additions and 2 deletions

View file

@ -22,8 +22,8 @@ localPort = 8080
externalPort = 8080
[[ports]]
localPort = 37969
externalPort = 3000
localPort = 34949
externalPort = 3001
[workflows]
runButton = "Project"

View file

@ -759,6 +759,186 @@
font-weight: 600;
}
/* Add Warden Section */
.add-warden-section {
background: linear-gradient(180deg, transparent, rgba(99, 102, 241, 0.03), transparent);
}
.add-warden-intro {
text-align: center;
max-width: 800px;
margin: 0 auto 4rem;
}
.add-warden-intro p {
color: var(--muted);
font-size: 1.1rem;
line-height: 1.7;
}
.invite-steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 2rem;
margin-bottom: 4rem;
}
.invite-step {
text-align: center;
position: relative;
}
.invite-step:not(:last-child)::after {
content: '';
position: absolute;
top: 2rem;
right: -1rem;
width: 2rem;
height: 2px;
background: linear-gradient(90deg, var(--gradient-1), var(--gradient-2));
}
.step-number {
width: 64px;
height: 64px;
background: linear-gradient(135deg, var(--gradient-1), var(--gradient-2));
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.5rem;
font-weight: 700;
margin: 0 auto 1.25rem;
box-shadow: 0 4px 20px rgba(99, 102, 241, 0.3);
}
.invite-step h3 {
font-size: 1.25rem;
margin-bottom: 0.5rem;
}
.invite-step p {
color: var(--muted);
font-size: 0.9rem;
line-height: 1.6;
}
.modes-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 2rem;
margin-bottom: 3rem;
}
.mode-card {
background: var(--card);
border: 1px solid var(--card-border);
border-radius: 16px;
padding: 2rem;
transition: all 0.3s;
}
.mode-card:hover {
border-color: var(--card-border-hover);
transform: translateY(-4px);
}
.mode-header {
display: flex;
align-items: center;
gap: 1rem;
margin-bottom: 1.25rem;
}
.mode-icon {
width: 48px;
height: 48px;
background: linear-gradient(135deg, var(--gradient-1), var(--gradient-2));
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.5rem;
}
.mode-card.federated .mode-icon {
background: linear-gradient(135deg, var(--gradient-gold), var(--gradient-rose));
}
.mode-header h3 {
font-size: 1.35rem;
}
.mode-card > p {
color: var(--muted);
margin-bottom: 1.5rem;
line-height: 1.6;
}
.mode-features {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
.mode-feature {
display: flex;
align-items: center;
gap: 0.75rem;
font-size: 0.9rem;
}
.mode-feature svg {
color: var(--success);
flex-shrink: 0;
}
.invite-cta {
text-align: center;
padding: 3rem;
background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(59, 130, 246, 0.05));
border: 1px solid rgba(99, 102, 241, 0.2);
border-radius: 20px;
}
.invite-cta h3 {
font-size: 1.75rem;
margin-bottom: 0.75rem;
}
.invite-cta > p {
color: var(--muted);
margin-bottom: 2rem;
font-size: 1.05rem;
}
.invite-buttons {
display: flex;
gap: 1rem;
justify-content: center;
flex-wrap: wrap;
}
@media (max-width: 768px) {
.invite-steps {
grid-template-columns: 1fr;
gap: 2rem;
}
.invite-step:not(:last-child)::after {
display: none;
}
.modes-grid {
grid-template-columns: 1fr;
}
.invite-buttons {
flex-direction: column;
align-items: center;
}
}
/* Free Forever Section */
.free-section {
background: linear-gradient(180deg, transparent, rgba(16, 185, 129, 0.03), transparent);
@ -1092,6 +1272,7 @@
<a href="#ecosystem">Ecosystem</a>
<a href="#federation">Federation</a>
<a href="#features">Features</a>
<a href="#invite">Add to Server</a>
<a href="#support">Support Us</a>
<a href="https://discord.gg/athx" target="_blank">Discord</a>
</nav>
@ -1485,6 +1666,119 @@
</div>
</section>
<!-- Add Warden to Your Server Section -->
<section class="section add-warden-section" id="invite">
<div class="container">
<div class="section-header">
<p class="section-eyebrow">For Server Owners</p>
<h2 class="section-title">Add <span class="text-gradient">Warden</span> to Your Server</h2>
<p class="section-subtitle">Whether you're part of the AeThex ecosystem or running an independent community, Warden provides powerful tools for your server.</p>
</div>
<div class="add-warden-intro">
<p>Warden works great as a standalone bot for any Discord server, but it truly shines when connected to the AeThex network. You choose how much integration you want - from zero to full federation.</p>
</div>
<!-- 3-Step Invite Flow -->
<div class="invite-steps">
<div class="invite-step">
<div class="step-number">1</div>
<h3>Invite Warden</h3>
<p>Add the bot to your server with a single click. No complicated setup required.</p>
</div>
<div class="invite-step">
<div class="step-number">2</div>
<h3>Configure</h3>
<p>Use /config to customize features. Sensible defaults mean you can skip this step.</p>
</div>
<div class="invite-step">
<div class="step-number">3</div>
<h3>Go Live</h3>
<p>Your server is ready! Members can start earning XP and using features immediately.</p>
</div>
</div>
<!-- Two Modes -->
<div class="modes-grid">
<div class="mode-card standalone">
<div class="mode-header">
<div class="mode-icon">🏠</div>
<h3>Standalone Mode</h3>
</div>
<p>Perfect for independent communities. All features work without any external connections. Your server, your rules.</p>
<div class="mode-features">
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Full XP, leveling, and prestige system</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Quests, achievements, and shop</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Sentinel security and auto-mod</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Server-specific leaderboards</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>No external dependencies</span>
</div>
</div>
</div>
<div class="mode-card federated">
<div class="mode-header">
<div class="mode-icon">🌐</div>
<h3>Federated Mode</h3>
</div>
<p>Join the AeThex network. Your members' progress syncs across 5+ linked servers. Optional and admin-controlled.</p>
<div class="mode-features">
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>All standalone features included</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Cross-server XP pooling</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Global leaderboards and rankings</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Role sync between servers</span>
</div>
<div class="mode-feature">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 6L9 17l-5-5"/></svg>
<span>Connect to AeThex Studio & Foundation</span>
</div>
</div>
</div>
</div>
<!-- CTA -->
<div class="invite-cta">
<h3>Ready to Level Up Your Server?</h3>
<p>Join hundreds of communities already using Warden. Free forever, no strings attached.</p>
<div class="invite-buttons">
<a href="https://discord.com/api/oauth2/authorize?client_id=578971245454950421&permissions=8&scope=bot%20applications.commands" class="btn btn-primary btn-lg" target="_blank">
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><path d="M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03z"/></svg>
Invite Warden
</a>
<a href="https://discord.gg/athx" class="btn btn-secondary btn-lg" target="_blank">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><path d="M12 17h.01"/></svg>
Join Support Server
</a>
</div>
</div>
</div>
</section>
<!-- Free Forever Section -->
<section class="section free-section" id="support">
<div class="container">